Re: [RFC] Explicit call-site send-by-ref syntax

From: Date: Fri, 08 Dec 2017 01:54:16 +0000
Subject: Re: [RFC] Explicit call-site send-by-ref syntax
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-101263@lists.php.net to get a copy of this message
Am 08.12.2017 um 01:38 schrieb Björn Larsson:
Den 2017-12-06 kl. 20:49, skrev Nikita Popov:
Hi internals, I'd like propose optional support for explicitly marking by-reference argument passing at the call-site, in addition to the declaration-site:
     https://wiki.php.net/rfc/explicit_send_by_ref
In short, while currently we have
     function byRef(&$ref) {...}
     byRef($var);
this proposal would also allow
     function byRef(&$ref) {...}
     byRef(&$var);
so that the use of by-reference passing is obvious without having to consult the function declaration.
I think this proposal has a good point about static analysers, not just about human readability. A good static analyser is very helpful for eg migration projects and if this proposal benefits that, it's a plus. Also using same syntax for references like in other parts of the language has a value. Now expressing the same thing in two different ways, with or without & is confusing, so I think one needs to think about if old syntax should be deprecated in 8.0
to get this consistent that would also require change every line of code calling core functions like sort instead of sort($array) as sort($array) i doubt that the benefits could justify the BC break

« previous php.internals (#101263) next »