Re: [PHP-DEV] [Vote] Pipe operator v2

This is only part of a thread. view whole thread
  115514
July 20, 2021 09:12 ocramius@gmail.com (Marco Pivetta)
Hey Larry,

On Sat, Jul 17, 2021 at 6:00 PM Larry Garfield <larry@garfieldtech.com>
wrote:

> Hi Marco. Thank you for your explanation, even if I naturally disagree. > > Out of curiosity, what sort of additional > power/capability/flexibility/etc. would, in your mind, justify pipe or > similar being a native feature? PHP has a *ton* of native features that > *could* be done in user space, or are simply syntax sugar, but still wildly > popular and useful as native syntax. What is your heuristic for that? > > (The fact that there are 3-4 user space implementations of pipe-like > behavior, all incompatible, is one of the reasons why I think standardizing > it into a common core syntax *is* a good idea, though I know others > disagree.) >
I think the pipe operator as a **custom** operator made sense when we had the entire discussion around placeholder parameters (`$$`) to be used in the pipeline. As a plain "chain of functions with one input parameter and one output", it makes little sense to have it as a custom construct, as it only adds complexity to the AST. Greets, Marco Pivetta http://twitter.com/Ocramius http://ocramius.github.com/
  115532
July 20, 2021 14:53 olleharstedt@gmail.com (=?UTF-8?Q?Olle_H=C3=A4rstedt?=)
2021-07-20 11:12 GMT+02:00, Marco Pivetta <ocramius@gmail.com>:
> Hey Larry, > > On Sat, Jul 17, 2021 at 6:00 PM Larry Garfield <larry@garfieldtech.com> > wrote: > >> Hi Marco. Thank you for your explanation, even if I naturally disagree. >> >> Out of curiosity, what sort of additional >> power/capability/flexibility/etc. would, in your mind, justify pipe or >> similar being a native feature? PHP has a *ton* of native features that >> *could* be done in user space, or are simply syntax sugar, but still >> wildly >> popular and useful as native syntax. What is your heuristic for that? >> >> (The fact that there are 3-4 user space implementations of pipe-like >> behavior, all incompatible, is one of the reasons why I think >> standardizing >> it into a common core syntax *is* a good idea, though I know others >> disagree.) >> > > I think the pipe operator as a **custom** operator made sense when we had > the entire discussion around placeholder parameters (`$$`) to be used in > the pipeline. > > As a plain "chain of functions with one input parameter and one output", it > makes little sense to have it as a custom construct, as it only adds > complexity to the AST.
That is the idiomatic implementation, though. Hacklang is the odd man out with $$. Olle