elt547
Closest thing to "Ruby Under a Microscope" for Elixir
I really enjoyed the book about ruby’s implementation. I know there’s nothing quite the same for elixir, but is there something in the right direction? At this point I don’t have enough patience to pore over the source haphazardly.
At the same time I constantly find myself running into questions resulting from a lack of understanding of the underlying machine. Is there a collection of “elixir implementation” resources somewhere?
Most Liked
benwilson512
The Erlang Runtime System is a fantastic resource for understanding the BEAM itself. It’s focused on erlang but it applies equally to Elixir.
christhekeele
Not that I know of, though I hope to be proven wrong!
There are really 3 aspects of Elixir’s “implementation” you might be interested in:
-
The underlying BEAM virtual machine used in both erlang and Elixir:
- The erlang blog has some great posts about this, ex this article.
- The BEAM book already posted is also great!
-
The erlang-implemented compiler for Elixir, and Elixir’s AST:
- There’s actually… not a lot out there on this. I’ve had to read through, and even tinker with, the compiler before, but there are scarce few resources. That’s reasonable since it’s sort of a private API, but I know I would have loved more resources!
-
The standard library and related design decisions:
-
The Elixir blog has some good articles; these days it’s mostly release announcements and case studies, but a few of the earlier ones dig into this a little, ex this article.
-
It’s far more dialectic than a cohesive presentation of anything, but there’s a decade of language design discussion on the core mailing list. You can search just about anything Elixir and see how it blossomed into being.
-
Other resources of note:
- A great crash course to OTP (which is the sort of erlang stdlib/framework for concurrency) for Elixirists is Designing Elixir Systems with OTP.
- Learn You Some Erlang is an introduction to erlang itself, but also dives into OTP a bunch.
- Also by Fred Hébert, Erlang in Anger is a great resource for debugging and fine-tuning your running systems.







