Collection Pipeline

Martin Fowler:

"The reason people say that collection pipelines aren't a feature of OO programming is that the popular OO languages like C++, Java, and C# didn't adopt Smalltalk's use of lambdas, and thus didn't have the rich array of collection methods that underpin the collection pipeline pattern."

I still remember being struck by the elegance of Smalltalk during a "Programming History" module at University. Afterwards Java just felt a bit 'dirty' in comparison.

Thankfully Java has lambdas under its belt now so stream processing is at least bearable:

Observable.from(events)
    .map(eventDeserializer::deserialize)
    .subscribe(System.out::println);

Exciting times.