There are probably a lot of fun variations to explore. Since this post seemed to resonate, I may be motivated to try some more experiments.
There are probably a lot of fun variations to explore. Since this post seemed to resonate, I may be motivated to try some more experiments.
If the visuals were vertical then the filtering might look more natural because time would be left-to-right and balls would have natural gravity and fall "down" through filters? Code runs top to bottom so I'm guessing it would still be clear.
And putting a number in each of the balls might help clarity too :-)
The only crazy thing is that Haskell lazy is pull (right) whereas Ruby lazy is still push - so the lazy keyword is somewhat confusing but that can't be fixed.
I am not criticising and certainly don't want to make unnecessary work for you. Graphic design and animation are dark arts!