Advanced Functional Programming with Elixir (Pragmatic Bookshelf)

PragmaticBookshelf

PragmaticBookshelf

Devtalk Sponsor

Use advanced functional programming principles, practical Domain-Driven Design techniques, and production-ready Elixir code to build scalable, complex systems from simple, reusable components.

Joseph Koski

Series editor: Sophie DeBenedetto @SophieDeBenedetto
Developmental editor Adaobi Obi Tulton @aotulton

Combine advanced functional programming concepts with production-ready Elixir and proven domain-driven design techniques to write cleaner, more thoughtful software. You’ll explore foundational ideas like equality, ordering, predicates, monoids, and monads—then go beyond syntax as you develop intuition for composing logic, modeling behavior, and growing systems. With a focus on maintainable, declarative code over theory, you’ll gain practical, composable patterns you can apply right away.

Get ready to manage crowds, adjust priorities, and keep everyone safe in FunPark, a place that never sits still. Your job is to model that complexity and build the systems that keep everything running smoothly, even as the business team is still figuring out what they want and the experts keep rewriting the rules.

Using core abstractions—equality, ordering, predicates, monoids, and monads—you’ll break problems into small, composable pieces that are both well-behaved and easy to combine. Rather than getting bogged down in theory or formal proofs, you’ll dive into real-world Elixir—using protocols, structs, and pattern matching to express shared behavior across your domain. Along the way, you’ll build the vocabulary and mental models you need to organize complex logic, supported by a production-ready open-source library you can use, extend, and explore in your own projects.

Whether you’re an Elixir developer mastering functional programming or a functional programmer exploring Elixir, you’ll discover how to write code that’s easier to reason about—and create systems that stay understandable, even as they grow.


Joseph Koski is a software engineer with expertise in functional programming, domain-driven design, and safety-critical systems. He created the Funx library, bringing tools like monads to Elixir. He writes at joekoski.com, sharing insights on functional programming, real-time systems, and using Elixir to solve complex, reliability-focused problems.


Don’t forget you can get 35% off with your Devtalk discount! Just use the coupon code “devtalk.com" at checkout :+1:

Latest Threads About This Book Top

PragmaticBookshelf
Use advanced functional programming principles, practical Domain-Driven Design techniques, and production-ready Elixir code to build scal...
New

Most Active This Week Top

PragmaticBookshelf
Use advanced functional programming principles, practical Domain-Driven Design techniques, and production-ready Elixir code to build scal...
New

Most Active This Month Top

Most Active This Year Top

Most Active Last Three Years Top

Most Active Over Three Years Top

Get money off!

The Pragmatic Bookshelf

35% off any eBook

Use the coupon code "devtalk.com" to get 35% off any eBook published by PragProg!

Related Portals