This brings to mind an expression I wanted to have put on a T-shirt around 1997:
On the front: The more I use Java
On the back: The more I love Smalltalk
This was while I was in the middle of writing a compiler front-end and a code generator for a JVM. I decided to write the compiler in Java (eat your own dog food), and the exact kind of do. every. step. at. a. time. in the example here made me long for select: []
It looks a lot like functional code actually. I used to do this stuff with F# and Elixir. Arrows are quite effective to point out where the data is going.
On the front: The more I use Java On the back: The more I love Smalltalk
This was while I was in the middle of writing a compiler front-end and a code generator for a JVM. I decided to write the compiler in Java (eat your own dog food), and the exact kind of do. every. step. at. a. time. in the example here made me long for select: []