Elixir is a smooth, powerful, and small language; an excellent place for newcomers to learn about functional programming. If you're new to Elixir, its functional style can seem difficult, but with help from this hands-on introduction, you'll scale the learning curve and discover how enjoyable, powerful, and fun this language can be. Elixir combines the robust functional programming of Erlang with an approach that looks more like Ruby and reaches toward metaprogramming with powerful macro features.
Authors Simon St. Laurent and J. David Eisenberg show you how to write simple Elixir programs by teaching you one skill at a time. You’ll learn about pattern matching, recursion, message passing, process-oriented programming, and establishing pathways for data rather than telling it where to go. By the end of your journey, you’ll understand why Elixir is ideal for concurrency and resilience.
* Get comfortable with IEx, Elixir's command line interface * Become familiar with Elixir’s basic structures by working with numbers * Discover atoms, pattern matching, and guards: the foundations of your program structure * Delve into the heart of Elixir processing with recursion, strings, lists, and higher-order functions * Create processes, send messages among them, and apply pattern matching to incoming messages * Store and manipulate structured data with Erlang Term * Storage (ETS) and the Mnesia database * Build resilient applications with the Open Telecom Platform (OTP) * Define macros with Elixir's meta-programming tools.
Got the book from Humble Bundle Functional Programming, I read it in one shot straight. It is okay, covering all features of Elixir. The cool thing of the book that it uses only 1 example from the beginning till the last chapter - what a so consistent content. Though, it feels like reading Elixir tutorial + Phoenix tutorial with sole one example. Mnesia is a good part which not in Elixir tut and you have to use Elixir lib for it / or know Erlang already. The part on error handling is so basic - it said that in Elixir let it fall is the way to do, but don't explain further. Learn some good tips like: cd , pwd, v, :dbg, display Mnesia table on GUI which not available now in Elixir tut.
In a way, this is an "Introducing" book, so one shouldn't expect some deep knowledge about the language after reading it. But also, sometimes it feels a bit too "shallow" to gather some proper understanding of the language.
One thing that kept bugging me was the fact that code kept changing: Not in the "going forward" kind of change, which is good, explain the basic, then start adding more complex/shorter solutions, but "let me bend this to another direction and completely ignore that direction later".
But to get a "feeling" of the language, it is a good book.
Short book...nice if you have read any other Elixir book before...it's good for reference or for knowledge refreshing...but wouldn't choose it as a starter book...as it just scratches the surface without going to deep in detail...
Would love to give it more than 3 stars...but it have so few examples...
Having to learn to think in tail-recursive functions all the time instead of what I'm used to in most programming languages meant Elixir was a headache to learn and feels more like an IQ test when writing in it. The book is not too bad at explaining the concepts, and does a pretty good job at easing the learning process, just not an exceptional job.
A good introduction to Elixir. Basic syntax, semantics, debugging, observation, testing, and a brief introduction to GenServer and Supervisor. Exactly what I wanted before I went off to read and write in a new programming language!
This the second Elixir book I read so naturally I read this one faster. I also find it much easier to read. The examples are easy to understand. Almost like Ruby without its functional programming features.
Seems like a reasonable overview of Elixir. The book seemed a little confused about whether it was an introduction to programming or just Elixir though. I feel it could have assumed more programming experience and built on that to introduce Elixir and its distinguishing features.
Not a bad book, but really quite basic. Unless you are completely you new to Erlang and/or FP, you're probably better off with some other book. In all fairness, the foreword does say as much.
A well written fast introduction to Elixir programming language. But remember it is just an introduction. It is not enough to understand how things actually work.