Table of Contents
- Becoming Functional - Several Questions
- Thinking Functionally - A First Example
- Starting Out with Functions – A Core Concept
- Behaving Properly - Pure Functions
- Programming Declaratively – A Better Style
- Producing Functions – Higher-Order Functions
- Transforming Functions – Currying and Partial Application
- Connecting Functions – Pipelining, Composition, and More
- Designing Functions – Recursion
- Ensuring Purity – Immutability
- Implementing Design Patterns – The Functional Way
- Building Better Containers – Functional Data Types

