Re: [HACKERS] Missing array support - Mailing list pgsql-patches

From Joe Conway
Subject Re: [HACKERS] Missing array support
Date
Msg-id 3F00C89E.6060109@joeconway.com
Whole thread Raw
In response to Re: [HACKERS] Missing array support  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-patches
Tom Lane wrote:
> Thinking about this further, it occurs to me that there's no hard reason
> plpgsql (and other PLs that adopt the we-can-convert-anything-to-string
> philosophy, such as pltcl) couldn't allow arguments (though not results)
> of type ANY.  It's not different from accepting ANYELEMENT as far as the
> runtime mechanisms are concerned.  The only difference is in
> constraining multiple arguments and/or the result to be of the same or
> related types, which is not really an issue that affects the PL directly.

True. As long as the function has access to the runtime data type, it
has the ability to deal with anything it's handed.

> As far as the other point goes, I plan to change resolve_type to be like

OK, that all makes good sense to me now.

> I'm still not convinced that there is any application for it outside of
> deriving a polymorphic aggregate's state type, though.

At least not yet ;-)

Between this discussion, and Peter pointing out that the spec allows
arrays-of-arrays, it's gotten me thinking about how to implement said
arrays-of-arrays. Obviously not gonna happen for 7.4, but I might try to
do that, fix the NULL array element issue, and otherwise try to continue
the progress on SQL99 array support for 7.5.

Joe


pgsql-patches by date:

Previous
From: Joe Conway
Date:
Subject: Re: polymorphic arguments and return type for PL/pgSQL
Next
From: Tom Lane
Date:
Subject: Re: polymorphic arguments and return type for PL/pgSQL