Chapter 2. Putting the Function in Functional Programming

In the first chapter, the basic concept of functions and how they are supported by lambda expressions in Java 8 were introduced. In this chapter, we will cover lambda expressions in more depth. We will explain how they satisfy the mathematical definition of a function and how we can use them in supporting Java applications.

In this chapter, you will cover several topics, including:

  • Lambda expression syntax and type inference
  • High-order, pure, and first-class functions
  • Referential transparency
  • Closure and currying
  • Common functional interfaces

Our discussions cover high-order functions, first-class functions, and pure functions. Also examined are the concepts of referential transparency, closure, ...

Get Learning Java Functional Programming 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.