A Functional Programming book from beginner to advanced without skipping a single step along the way. In my 40 years of programming, I've felt that programming books always let me down, especially Functional Programming books. So, I wrote the book I wish I had 5 years ago. Functional Programming will never be easy, but it can be easier.
An approachable, well-written, practice-oriented, academism-free guide into programming with types. How to build useful real-world type-level programs with low complexity and low risks.
Most blockchain books teach the theory. This one walks you through building a complete Bitcoin-style blockchain in Rust, end to end — cryptography, consensus, networking, persistence, REST API, desktop wallets, and Kubernetes deployment.
Take a practical deep dive into modern Haskell development with GHC, Cabal, HLS and effect systems. Learn how the tools work under the hood, how they fit together and how to use them effectively in real production projects. Built for engineers who want to move beyond syntax and develop Haskell with confidence.
Build a strong foundation in Gleam and learn how to turn its simplicity into reliable, concurrent systems. From language basics and the BEAM to OTP, web development and deployment, this practical guide uses clear explanations and runnable examples to help you build software that is safe, scalable and ready for production.
Haskell Unlocked is a practical journey from the fundamentals of functional programming to advanced, production-ready Haskell. Learn to harness pure functions, powerful types, and modern abstractions to build elegant, reliable, and scalable software.
Have you wondered what makes functional programming such a big deal, but haven't been able to get through any of the explanations? We wrote this book for you. Four years in the making! Phone-friendly: the code listings are easily readable without phone gymnastics. This is a small book—it took an enormous amount of effort to make it so! Also available as a Print Book.
Tired of React runtime errors despite TypeScript? Elm guarantees zero runtime exceptions—if it compiles, it works. This practical guide shows React developers how Elm's strict functional programming approach eliminates entire classes of bugs while teaching you real FP concepts that transfer to any language. Learn the pattern that inspired Redux, discover compile-time safety that catches errors TypeScript misses, and see side-by-side code comparisons from a production codebase with 150,000+ lines of Elm. Your React knowledge is your advantage—this book meets you where you are. Why this book exists: Christian believes Elm is the fastest and most effective way for developers to truly learn functional programming—not watered-down FP patterns, but real, uncompromising functional thinking. Whether you adopt Elm professionally or not, learning it will make you a better developer in any language. This book is his way of sharing that insight with React developers who are ready to level up.
Discover the power and elegance of OCaml, from your very first program to production-ready applications. The OCaml Handbook combines clear explanations, practical examples, and real-world insights to help students and experienced developers alike master one of the most expressive programming languages in use today.
Build reliable, scalable software with The Professional’s Guide to Elixir. Learn functional programming, BEAM concurrency, OTP fault tolerance, metaprogramming, and modern web development with Phoenix and LiveView. This book gives you the practical knowledge to create systems that scale and stay resilient.
A direct route from the basics to real-world Haskell. Master functions, types, and effects, structure real projects, and ship a working blog engine. Along the way, you learn design principles that make you a stronger engineer in any language.
In functional programming, at the heart of input/output, failure, state, logic, and much more, lies a powerful abstraction called monad. This book provides a journey from the very first concepts, to the myriad of monads available to programmers, down to the categorical foundations.
Write code that you can understand without holding the entire system in your head. This book shows you how Java's modern functional features—records, sealed types, lambdas, streams—combine into a powerful approach to design. You'll learn: • How to eliminate race conditions without synchronized blocks • How to write tests that test business logic, not mock frameworks • How to compose complex behaviors from simple, reusable functions • How to manage deeply nested immutable data without boilerplate • How to adopt functional patterns incrementally in existing codebases Written for working developers. Filled with production-ready code examples.
Why is Dhall is the most powerful and safe language for templated configuration files? Because Dhall implements System Fω, the type system at the core of Haskell - the most powerful type system short of adopting full dependent types. I found Dhall to be a delightfully lucid vehicle for learning the core patterns of functional programming. Non-Turing-completeness for the win!