> On Apr 5, 2021, at 12:12, Christoph M. Becker <cmbecke...@gmx.de> wrote: > > On 05.04.2021 at 18:40, André Hänsel wrote: > >> I was wondering... PHP is the only language I know of where you have to >> write `(new Foo())->bar()` instead of >> `new Foo()->bar()`. This is particularly apparent with the builder pattern: >> >> $developer->drink((new Coffee())->withCream()->withSugar()); >> $logger->log((new LogMessage())->withMessage('Coffee was drunk')); >> >> Since `new Foo()->bar()` cannot (and probably should not) be used to >> "dynamically instantiate a new thing of the class >> name returned by function Foo()", it seems like it would be no problem to >> change the precedence rules so that >> `new Foo()->bar()` means "instantiate a new Foo and call bar() on it". >> >> It's currently a syntax error, so allowing it would be automatically >> compatible. >> >> Has this ever been discussed before? > > See <https://bugs.php.net/bug.php?id=70549>.
The last comment on that issue reads: > @Nikic > Good news. I'll prepare RFC for 7.1. Was there an RFC for it? I can’t find one. Cheers, Ben
signature.asc
Description: Message signed with OpenPGP