Bruce Momjian <[EMAIL PROTECTED]> writes:
> Tom Lane wrote:
>> The $$FOO proposal I put forward earlier was consciously modeled on
>> here-documents.

> Couldn't we allow << at the beginning of the line to mean 'here' document?

No; you could easily be breaking existing queries, for example

regression=# select f1, f1 << 8 from int4_tbl;
     f1      | ?column?
-------------+-----------
           0 |         0
      123456 |  31604736
     -123456 | -31604736
  2147483647 |      -256
 -2147483647 |       256
(5 rows)

is only one unfortunate choice of line break away from being eaten by
such a proposal.

I suggested $$ because AFAIK we don't currently have any valid syntax
that would allow that to appear at the start of a line (it helps a great
deal that we just removed $ from the set of characters allowed in
operators ;-)).  If you consider my $$FOO proposal to include the
possibility of a zero-length FOO string, then the shortest legal
alternative would be

        $$
        string contents here
        $$

but adding a string to that reduces the odds of conflict (especially
when you consider languages like plperl; IIRC, $$ is something or other
useful in Perl).  Also you can use mnemonically-chosen strings; maybe
Andreas will like

        $$FUNCTIONBODY
        text here
        $$FUNCTIONBODY

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to