HASHes [was Re: Calling PL functions with named parameters] - Mailing list pgsql-hackers

From David Fetter
Subject HASHes [was Re: Calling PL functions with named parameters]
Date
Msg-id 20040816160103.GG17886@fetter.org
Whole thread Raw
In response to Re: Calling PL functions with named parameters  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: HASHes [was Re: Calling PL functions with named parameters]
List pgsql-hackers
On Fri, Aug 13, 2004 at 07:12:14PM -0400, Tom Lane wrote:
> "Jim C. Nasby" <decibel@decibel.org> writes:
> > IOW, their function resolution code treats a(int, int default 0)
> > as being equivalent to a(int) and a(int, int).
> 
> So you are willing to prohibit a(int) from existing in parallel with
> a(int, int-with-a-default) ?
> 
> I'll be interested to see the unique-index scheme for pg_proc to
> enforce that ;-)
> 
> However this does point up the fact that there already *is* a way to
> accomplish the task, which is just to create some helper function(s)
> to supply the default(s).  Perhaps we can leave it at that for the
> time being, and concentrate on adding real new functionality.

That'd be neat.  :)

Here's another possibility.  PostgreSQL has already "gone there" with
multidimensional ARRAYs, and thanks, Joe!  What about making HASHes a
first-class object?  This would do two controversial things (that I've
thought of).

1.  Use the => operator, removing it from the pool of unused
operators.

2.  Possibly encourage people to Do The Wrong Thing(TM).

What we'd get for the effort, though, is tighter integration with
languages that have some kind of associative array structure, which is
to say all the "scripting" languages, and an ability to deal with 
data structures to and from queries that more closely matches what the
middleware/front end needs to do.

How big a can of worms am I opening here?

Cheers,
D
-- 
David Fetter david@fetter.org http://fetter.org/
phone: +1 510 893 6100   mobile: +1 415 235 3778

Remember to vote!


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: COPY with column headings
Next
From: Tom Lane
Date:
Subject: Re: HASHes [was Re: Calling PL functions with named parameters]