Skip site navigation (1) Skip section navigation (2)

Re: variadic function support

From: Simon Riggs <simon(at)2ndquadrant(dot)com>
To: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
Cc: pgsql-patches <pgsql-patches(at)postgresql(dot)org>
Subject: Re: variadic function support
Date: 2008-07-04 09:05:35
Message-ID: (view raw or whole thread)
Lists: pgsql-patches
On Mon, 2008-06-23 at 15:13 +0200, Pavel Stehule wrote:

> this patch enhance current syntax of CREATE FUNCTION statement. It
> allows creating functions with variable number of arguments. This
> version is different than last my patches. It doesn't need patching
> PL. Basic idea is transformation of real arguments (related to
> declared variadic argument) to array. All changes are mostly in
> parser.

Something for the TODO.

An added thought with regard to variadic functions:

when we have them, we should be able to parse/transform repeated
operator sequences into a call to a variadic function, if it exists.

e.g. w || x || y || z can be transformed into a call to 
concat_variadic(w, x, y, z) 

This can then be made to perform better than

concat(concat(concat(w, x), y), z)

which would involve lots of wasted memory copies.

 Simon Riggs 
 PostgreSQL Training, Services and Support

In response to


pgsql-patches by date

Next:From: Oleg BartunovDate: 2008-07-04 09:13:17
Subject: Re: [PATCHES] Multi-column GIN
Previous:From: Pavan DeolaseeDate: 2008-07-04 09:03:41
Subject: Re: page macros cleanup

Privacy Policy | About PostgreSQL
Copyright © 1996-2015 The PostgreSQL Global Development Group