Anup Cowkur post on topic: why not use some of the concepts and techniques from the functional world in Android programming.
The term Functional programming is an umbrella for a range of programming concepts which the moniker doesn’t quite do justice to. At it’s core, it’s a style of programming that treats programs as evaluation of mathematical functions and avoids mutable state and side effects. Declarative, Explicit and Concurrent code that is easier to reason about and is designed to avoid surprises.
Authors then describes how to use pure functions. A function is pure if its output depends only on its input and has no side effects. Code examples demonstrating functional programming in both Java and Kotlin are included… Good reading.
[Read More]