Re:Show HN: A JavaScript function that looks and behaves lik...
by mg on Wednesday September 27, 2023 @03:47PM
(#37680239)
This:
Seems not to make sense. Replacing c(b) with x we get:
Replacing d(x) with x we get:
Replacing e(x) with x we get:
What is that?
[ Parent
| on HN ]
Re:Show HN: A JavaScript function that looks and behaves lik...
by notpushkin on Wednesday September 27, 2023 @05:03PM
(#37681272)
Sorry, messed up parens here. It should have been:
a = f(e(d(c(b))), 4), 5)
b is passed to c, then the result is passed to d, then to e along with 4 as a second parameter, and finally to f along with 5.
Re:Show HN: A JavaScript function that looks and behaves lik...
by mg on Thursday September 28, 2023 @02:07AM
(#37685868)
a = f(e(d(c(b))), 4), 5)
That has 4 opening parenthesis and 5 closing parenthesis. b is passed to c
b ~> c
then the result is passed to d
b ~> c ~> d
then to e along with 4 as a second parameter
b ~> c ~> d,4 ~> e
and finally to f along with 5
b ~> c ~> d,4 ~> e,5 ~> f
Re:Show HN: A JavaScript function that looks and behaves lik...
by notpushkin on Thursday September 28, 2023 @04:41AM
(#37686969)
b ~> c ~> d,4 ~> e
This reads as b ~> c ~> (d, 4) ~> e
to me. Sure, you can get used to it, but it’s pretty unnatural. Is this syntax used in any other languages?
Re:Show HN: A JavaScript function that looks and behaves lik...
by mg on Saturday September 30, 2023 @03:55AM
(#37713492)
The nice aspect of "this ~> that" is that the meaning is simply "put this into that". And that it results in the shortest code.
An alternative would be:
b ~> c ~> d ~> e(%,4)
Slightly longer, but maybe easier to read. Also easier to handle, as you can remove the fourth part " ~> e(%,4)" without having to change the third part.