self.learn()

Collection Pipeline

November 05, 2014

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.


Written by Jonathan Ruckwood, a cloud-native consultant based in London. You can find him on GitHub and Twitter or contact by email.