James William Pye <pgsql@jwp.name> writes:
> On Sun, May 07, 2006 at 12:16:16AM +0200, Thomas Hallgren wrote:
>> Why are there two ways of representing some of the array types? I mean,
>> why is there an _int4 when you could just as well write int4[]? I'm
>> probably missing the point altogether.
> FWICT, Prefixing a '_' is the convention used to make the array type's typname
> unique. Being able to reference array types as _type is a "side effect".
> (array types being actual rows in pg_type)
There used to be some contexts where you *had* to write _foo instead of
foo[] because the grammar only allowed simple names and not the full
TypeName production. I think we've fixed them all, but very likely
there are places in contrib still following the old convention.
regards, tom lane