This is an experimental project where I was inspired by the trampoline pattern in objective-c. I wanted to see how it translated to Ruby and if it was usable in that context. Along the way, I decided to make the collections lazy to take a more functional approach. What I was left with was the functional approach and very little of the trampoline pattern. While in some cases, it is useful, it is hard to debug. Besides, I think lazy collections are very fast for last collections and you need to do a lot of operations on them. But, take it for what it is. An in-progress experiment that I try out ideas on.
btbuxton/ruby-lazyenum
It takes a functional approach to the common Enumerable protocol of select, collect, and reject. It also incorporates higher order methods.
MIT