Java 8 idioms: Functional purity

See the original posting on IBM developerWorks – Java

Functional pipelines can greatly increase the efficiency and performance of your
code, especially when combined with lazy evaluation and parallelization. In this
article you'll learn the rules of functional purity, and why you should always strive to keep lambda expressions pure in your functional pipelines.