October 08, 2018
fast piping in reasonml
fast piping in reasonml
fast piping allow you to transform your function code into more readable syntax, imaging you have human(person(age())) this is very inconvenience to see. with piping you can do it like this:
age
->person
->human
which is exactly the same as human(person(age()))
there are 3 different pipes as I understand you can do like
age
|> person
|> human
or
human @@ age->person
whats different is that |>
will put the parameter on the right side and
->
on the left side
person->human("something");
this will take person function and use on the first parameter so it become human(person, "something");
however if you are using person
|> human("something");
it become human("something", person);
and @@
is like wrap into ()
human @@ age->person
is same as
human(age->person)
which will equals to
human(person(age()))
you can read more here