Re: Domains versus polymorphic functions, redux

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Noah Misch <noah(at)leadboat(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)postgresql(dot)org, lr(at)pcorp(dot)us
Subject: Re: Domains versus polymorphic functions, redux
Date: 2011-06-03 15:22:34
Message-ID: BANLkTin6K0frABj3=+pA6iABU5S9aR07MQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Jun 3, 2011 at 1:14 AM, Noah Misch <noah(at)leadboat(dot)com> wrote:
> No, there's no need to do that.  The domain "is" an array, not merely something
> that can be coerced to an array.  Therefore, it can be chosen as the polymorphic
> type directly.  Indeed, all released versions do this.

Well, as Bill Clinton once said, "it depends on what the meaning of
the word 'is' is". I think of array types in PostgreSQL as meaning
"the types whose monikers end in a pair of square brackets". We don't
in general have the ability to create a type that behaves "like"
another type. In particular, you can't create a user-defined type
that "is" an array in the same way that a domain-over-array "is" an
array. If we had some kind of type interface facility that might be
possible, but we don't.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2011-06-03 15:25:38 About bug #6049
Previous Message Alexey Klyukin 2011-06-03 15:11:37 Re: Identifying no-op length coercions