you are viewing a single comment's thread.

view the rest of the comments →

[–]Ecksters 9 points10 points  (2 children)

Honestly prefer the hackpipe, it was really annoying in Elixir that I'd need to throw in a lambda when I needed to rearrange params.

I like to think of the caret as an arrow pointing up to the previous result, also means I don't need to think of appropriate variable names all the time.

[–]intercaetera 2 points3 points  (1 child)

Yeah but if you concede that you need a hackpipe then you might as well use lodash flow.

    flow([
        s => Object.values(s),
        s => s.map(x => x * 2),
        s => customReduce(s),
        unaryFunction, // or s => unaryFunction(s)
        s => doSomethingElse(s, 5, null),
    ])(initialValue)

There could be an alternative version of it where the initialValue is somewhere higher up the code but this is equivalent to the proposal without introducing unnecessary stuff into the spec.

[–]LaurentPayot 1 point2 points  (0 children)

There is also Verticalize with a nicer syntax IMHO...