Am I the only one who thinks yuck?
Instead of writing: a().b().c().d(), it's much nicer to write: d(c(b(a()))), or perhaps (d ∘ c ∘ b ∘ a)().
Instead of writing: a().b().c().d(), it's much nicer to write: d(c(b(a()))), or perhaps (d ∘ c ∘ b ∘ a)().
draw(line.start, line.end);
print(i, round(a / b));
you'd write line.start, line.end |> draw;
i, a, b |> div |> round |> print; line.start line.end draw
i a b div round print1. do the first step in the process
2. then do the next thing
3. followed by a third action
I struggle to think of any context outside of programming, retrosynthesis in chemistry, and some aspects of reverse-Polish notation calculators, where you conceive of the operations/arguments last-to-first. All of which are things typically encountered pretty late in one's educational journey.
a(b())
then you're already breaking your left-to-right/first-to-last rule.
a(axe).b(baz, bog).c(cid).d(dot)
vs d(c(b(a(axe), baz, bog), cid), dot)