On Thu, Oct 6, 2011 at 1:46 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "David E. Wheeler" <david@kineticode.com> writes:
>>>> Would it then be added as an alias for := for named function parameters? Or would that come still later?
>
>>> Once we do that, it will be impossible not merely deprecated to use =>
>>> as an operator name. I think that has to wait at least another release
>>> cycle or two past where we're using it ourselves.
>
>> Okay. I kind of like := so there's no rush AFAIC. :-)
>
> Hmm ... actually, that raises another issue that I'm not sure whether
> there's consensus for or not. Are we intending to keep name := value
> syntax forever, as an alternative to the standard name => value syntax?
> I can't immediately see a reason not to, other than the "it's not
> standard" argument.
>
> Because if we *are* going to keep it forever, there's no very good
> reason why we shouldn't accept this plpgsql cursor patch now. We'd
> just have to remember to extend plpgsql to take => at the same time
> we do that for core function calls.
It's hard to see adding support for => and dropping support for := in
the same release. That would be a compatibility nightmare.
If := is used by the standard for some other, incompatible purpose,
then I suppose we would want to add support for =>, wait a few
releases, deprecate :=, wait a couple of releases, remove :=
altogether. But IIRC we picked := precisely because the standard
didn't use it at all, or at least not for anything related... in which
case we may as well keep it around more or less indefinitely.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company