Re: RfD: more powerful "any" types

From: Hannu Krosing <hannu(at)krosing(dot)net>
To: Dimitri Fontaine <dfontaine(at)hi-media(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Peter Eisentraut <peter_e(at)gmx(dot)net>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, "David E(dot) Wheeler" <david(at)kineticode(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: RfD: more powerful "any" types
Date: 2009-09-10 07:08:37
Message-ID: 1252566517.4307.12.camel@hvost1700
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, 2009-09-10 at 08:44 +0300, Hannu Krosing wrote:

> maybe just let users say what they mean, so first time we have "any" and
> if we need more then we say "same_as(...)"

Acutually we could be even more SQL-y and have a more verbose syntax for
pseudotypes by extending the grammar

CREATE FUNCTION foo(
a ANY TYPE,
b SAME TYPE AS a,
c ANY TYPE
OUT d ARRAY OF SAME TYPE AS c
) ....

TYPE could probably be optional

> so your example becomes
>
>
> CREATE FUNCTION foo(a any, b same_type_as(a), c any)
> RETURNS same_type_as(c)[]
> AS $$
> ...
> $$;
>
> or the same using positional arguments
>
> CREATE FUNCTION foo(a any, b same_type_as(1), c any)
> RETURNS same_type_as(3)[]
> AS $$
> ...
> $$;
>
> this then gets transformed at parse time to whatever internal
> representation of type sameness we use.
>
> --
> Hannu Krosing http://www.2ndQuadrant.com
> PostgreSQL Scalability and Availability
> Services, Consulting and Training
>
>
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Maarten Foqué 2009-09-10 07:45:13 Re: corrupted double-linked list
Previous Message Andrew Chernow 2009-09-10 05:46:01 Re: new version of PQconnectdb was:(Re: [HACKERS] Determining client_encoding from client locale)