Re: RfD: more powerful "any" types - Mailing list pgsql-hackers

From Hannu Krosing
Subject Re: RfD: more powerful "any" types
Date
Msg-id 1252616925.3931.51.camel@hvost1700
Whole thread Raw
In response to Re: RfD: more powerful "any" types  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: RfD: more powerful "any" types
Re: RfD: more powerful "any" types
Re: RfD: more powerful "any" types
List pgsql-hackers
On Thu, 2009-09-10 at 16:48 -0400, Robert Haas wrote:
> On Thu, Sep 10, 2009 at 4:38 PM, Hannu Krosing <hannu@2ndquadrant.com> wrote:
> > On Thu, 2009-09-10 at 15:49 -0400, Tom Lane wrote:
> >> Hannu Krosing <hannu@2ndQuadrant.com> writes:
> >> > On Thu, 2009-09-10 at 15:06 -0400, Robert Haas wrote:
> >> >> It might be possible to make it work, but it's likely to create a lot
> >> >> of bloat in pg_type, and will make it very difficult to implement
> >> >> features such as anonymous functions (i.e. LAMBDA).
> >>
> >> > For functions, anonymous does not mean "impossible to identify" ;)
> >>
> >> > If it is something (semi)-permanent we should store it in pg_type and id
> >> > it by oid, if it is really, really transient (say a closure generated
> >> > upper in the function chain) we can probably assign it some kind of
> >> > temporary, per-process oid for the duration of its existence
> >>
> >> Right.  See what we do for anonymous composite types.
> >>
> >>
> >> > we could also change parser and translate reserved word ANY to typename
> >> > "any" .
> >>
> >> ANY is a reserved word for good and sufficient reasons.  "Change the
> >> parser" is not an answer.
> >
> > I suspect that alt least in some early SQL parsers all type names were reserved.
> >
> > Or do you see a possible conflict here ?
> >
> > What way can ANY be used in function type definition ?
> 
> Perhaps you should try changing ANY to a non-reserved word in the
> parser and see what happens.  If you come up with a way to resolve the
> shift/reduce and/or reduce/reduce conflicts that will probably result,
> submit a patch.

I don't want it to be a non-reserved word.

What I want is that this reserved word can be used in function argument
and return type definitions with special meaning

like reserver word FROM , which can be used in two different meanings
like this
SELECT substring(fielda FROM myregex') FROM mytable;




> ...Robert
-- 
Hannu Krosing   http://www.2ndQuadrant.com
PostgreSQL Scalability and Availability   Services, Consulting and Training




pgsql-hackers by date:

Previous
From: Josh Berkus
Date:
Subject: Re: COPY enhancements
Next
From: Pavel Stehule
Date:
Subject: Re: RfD: more powerful "any" types