I like it. Only exception is: ``` fn&() => ...; ```
Which I would prefer to see reserved for the purpose that you've written as: ``` fn() use(&) => ...; ``` The & symbol of "return by ref", should be placed on the right of the parentheses, near the return type: ``` fn(int &$x)&: int => $x; fn(&$x)& => $x; ``` The same thing could be allowed on regular functions and methods. currently you'd write ``` public function &bar(): int{ /* ... */ } public function &baz(){ /* ... */ } ``` Since 7.4 one would be allowed to write this to mean the same thing: ``` public function bar()&: int{ /* ... */ } public function baz()&{ /* ... */ } ``` Would you guys agree on making a second RFC later changing this after and if this RFC passes and before 7.4 is released?