I noticed the parallel between pipes and functions only a few weeks ago and it struck me that if you re-write lisp expressions left to right instead of 'inside out' I can suddenly understand much better what is going on.
so if I look at f(b(c(d(e))))) it is the same as 'cat e | d | c | b | f'
Where 'e' is the initial input data and the other letters are the functions transforming e in successive steps to the desired output.
The analogy probably breaks down pretty quickly, but for simple examples it seems to hold.
Is there a programming language that works in this left-to-right pipelined fashion?
so if I look at f(b(c(d(e))))) it is the same as 'cat e | d | c | b | f'
Where 'e' is the initial input data and the other letters are the functions transforming e in successive steps to the desired output.
The analogy probably breaks down pretty quickly, but for simple examples it seems to hold.
Is there a programming language that works in this left-to-right pipelined fashion?