Fully updated to Elixir 1.15, this authoritative bestseller reveals how Elixir tackles problems of scalability, fault tolerance, and high availability.
Thousands of developers have learned to build applications in Elixir by using Saša Juric’s Elixir in Action. You’ll skip the programming basics or 101 introductions; this book builds on your existing knowledge to get you quickly writing real Elixir code. Along the way, you'll develop an appreciation for, and considerable skill in, functional and concurrent programming.
Inside Elixir in Action, Third Edition you’ll find:
Updates for Elixir 1.15 Elixir modules, functions, and type system Functional and concurrent programming Introduction to distributed system design Creating deployable releasesFully updated to Elixir 1.15, this book contains new coverage of working with application configuration and the latest OTP releases. It teaches you the underlying principles and functional concepts of Elixir, and how each piece fits into the bigger picture of building production-ready systems with Elixir, Erlang, and the OTP framework.
Foreword by Francesco Cesarini.
About the technology
With best-in-class fault tolerance and concurrency, a pragmatic approach to functional programming, and the power to operate at scale, Elixir is the perfect choice for mission-critical software. Start reading Elixir in Action, and you’ll quickly understand why Elixir creator José Valim says it “...tops the list” of Elixir books.
About the book
Elixir in Action, Third Edition teaches you how to create distributed applications and server-side systems using Elixir and the Erlang VM. This Third Edition from Elixir expert Saša Juric is fully updated to include the latest features of Elixir 1.15. In it, you’ll master the foundations of the language, discover how the OTP framework minimizes tedious boilerplate code, and explore numerous examples that ensure you’re learning hands-on.
What's inside
Elixir modules, functions, and type system Functional and concurrent programming Introduction to distributed system design Creating deployable releasesAbout the reader
For programmers comfortable with client/server applications. No experience with Elixir, Erlang, or functional programming required.
About the author
Saša Juric uses Elixir and Erlang to build fault-tolerant, scalable, highly concurrent systems.
Technical editor on this book was Marius Butuc.
Table of Contents
PART 1 Functional Elixir
1 First steps
2 Building blocks
3 Control flow
4 Data abstractions
PART 2 CONCURRENT ELIXIR
5 Concurrency primitives
6 Generic server processes
7 Building a concurrent system
8 Fault tolerance basics
9 Isolating error effects
10 Beyond GenServer
PART 3 PRODUCTION
11 Working with components
12 Building a distributed system
13 Running the system