On Thu, Apr 20, 2023, at 7:00 AM, Rowan Tommins wrote:

> Rather than making everything use an array or array-like syntax, I 
> would probably go the other way and scrap the special syntax for 
> dynamic names, making the whole thing look like a function call, with 
> support for array unpacking:
>
> $point = clone $point with (x: $x, y: $y, z: $z);
> $point = clone $point with (...['x' => $x, 'y' => $y, 'z' => $z]);

I agree here, for all the reasons Rowan indicated.  We already have a perfectly 
good syntax and semantics for named arguments that supports splat.  Using that 
here would handle all the use cases we care about, including dynamic names, 
without any additional syntax.  

Let's not shoe-horn arrays in here where they're not needed.  Making arrays 
themselves fancier/more compact with an alternate syntax is worth discussing, 
but that should be a separate RFC.

--Larry Garfield

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php

Reply via email to