Java 8 in Action: Lambdas, streams, and functional-style programming - Mycroft (IEEE, 2003)