2021-07-04 4:12 GMT+02:00, Larry Garfield <la...@garfieldtech.com>:
> On Mon, Jun 7, 2021, at 2:00 PM, Larry Garfield wrote:
>> Hi folks. Me again.
>>
>> A year ago, I posted an RFC for a pipe operator, |>, aka function
>> concatenation.  At the time, the main thrust of the feedback was "cool,
>> like, but we need partial function application first so that the syntax
>> for callables isn't so crappy."
>>
>> The PFA RFC is winding down now and is looking quite good, so it's time
>> to revisit pipes.
>>
>> https://wiki.php.net/rfc/pipe-operator-v2
>>
>> Nothing radical has changed in the proposal since last year.  I have
>> updated it against the latest master.  I also updated the RFC to use
>> more examples that assume PFA, as the result is legit much nicer.  i
>> also tested it locally with a combined partials-and-pipes branch to
>> make sure they play nicely together, and they do.  (Yay!)  Assuming PFA
>> passes I will include those tests in the pipes branch before this one
>> goes to a vote.
>
> Hi again.
>
> With PFA being declined, I've again reworked the Pipes RFC.
>
> 1) It now does not use PFA in any examples, but it does use Nikita's
> first-class-callables RFC that looks like it's going to pass easily.
>
> 2) With major hand-holding from Levi Morrison and Joe Watkins, the
> implementation has shifted a bit.  It now evaluates left-to-right, always,
> whereas the previous version evaluated right-to-left.  That is, instead of
> $a |> $b |> $c desugaring into $c($b($a)), it now becomes effectively $tmp =
> $a; $tmp = $b($tmp); $tmp = $c($tmp);  That matters if $b or $c are function
> calls that return a callable, as they are then only called when the pipeline
> gets to that part of the expression.

Hi! Can you flesh out an example for this, please? Not sure I get the
use-case where it matters. Couldn't find any example inside the PR
either (the tests) that show-cased this particular implementation
detail. Did I miss it?

Olle

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

Reply via email to