© Adam L. Davis 2019
Adam L. DavisLearning Groovy 3https://doi.org/10.1007/978-1-4842-5058-7_9

9. Functional Programming

Adam L. Davis1 
(1)
New York, NY, USA
 

Functional Programming (FP) is a programming style that focuses on functions and minimizes changes of state (using immutable data structures). It is closer to expressing solutions mathematically rather than step-by-step instructions.

In FP, functions should be “side-effect free” (nothing outside the function is changed) and referentially transparent (a function returns the same value every time when given the same arguments).

FP can be seen as an alternative to the more common imperative programming, which is closer to telling the computer the steps to follow.

Although functional-programming can ...

Get Learning Groovy 3: Java-Based Dynamic Scripting now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.