Advanced Functional Programming with Elixir - Examples
How to Use These Notebooks
- Click a chapter link below to open the examples in Livebook
-
Run code cells with
Ctrl+Enter
or the ▶ button - Experiment freely — modify examples and see results immediately
- No setup required — everything runs in your browser
Interactive Chapters
-
Chapter 1: Build FunPark – Model Real-World Data
Define the park domain with rides, patrons, and fast passes -
Chapter 2: Implement Domain-Specific Equality with Protocols
Create flexible equality by implementingEq
-
Chapter 3: Create Flexible Ordering with Protocols
Express comparisons and sorting throughOrd
-
Chapter 4: Combine with Monoids
Explore associative operations and identity elements -
Chapter 5: Define Logic with Predicates
Build composable boolean conditions from simple parts -
Chapter 6: Compose in Context with Monads
Learn the fundamentals of sequencing with monads -
Chapter 7: Access Shared Environment with Reader
Thread configuration and context without clutter -
Chapter 8: Manage Absence with Maybe
Model optional data safely, avoiding nulls -
Chapter 9: Model Outcomes with Either
Represent success and failure explicitly -
Chapter 10: Coordinate Tasks with Effect
Combine async operations with error handling
Learn More
| https://www.joekoski.com/assets/images/jkelixir_small.jpg” alt=”Book cover” width=”120” /> | For complete explanations, theory, and domain reasoning, see the book:
[Advanced Functional Programming with Elixir](https://pragprog.com/titles/jkelixir/advanced-functional-programming-with-elixir). |