- Foreword
- Preface
- Chapter 1: Why Functional Programming?
- Confidence
- Communication
- Take
- YAGNI
- Resources
- Chapter 2: Foundations of Functional Functions
- What Is A Function?
- Function Input
- Function Output
- Functions Of Functions
- Syntax
- What's This?
- Chapter 3: Managing Function Inputs
- Some Now, Some Later
- One At A Time
- All For One
- Spread 'Em Out
- Order Matters
- No Points
- Chapter 4: Composing Functions
- Output To Input
- Reordered Composition
- Abstraction
- Revisiting Points
- Chapter 5: Reducing Side Effects
- Effects On The Side, Please
- Once Is Enough, Thanks
- Pure Bliss
- There Or Not
- Purifying
- Chapter 6: Value Immutability
- Primitive Immutability
- Value To Value
- Reassignment
- Performance
- Treatment
- Chapter 7: Closure vs Object
- The Same Page
- Look Alike
- Two Roads Diverged In A Wood...
- Chapter 8: Recursion
- Definition
- Declarative Recursion
- Stack
- Rearranging Recursion
- Chapter 9: List Operations
- Non-FP List Processing
- Map
- Filter
- Reduce
- Advanced List Operations
- Method vs. Standalone
- Looking For Lists
- Fusion
- Beyond Lists
- Chapter 10: Functional Async
- Time As State
- Eager vs Lazy
- Reactive FP
- Chapter 11: Putting It All Together
- Setup
- Stock Events
- Stock Ticker UI
- Appendix A: Transducing
- Appendix B: The Humble Monad
- Appendix C: FP Libraries