elt547

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

benwilson512

Author of Craft GraphQL APIs in Elixir with Absinthe

The BEAM Book: Understanding 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

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:

  1. 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!
  2. 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!
  3. 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.

Where Next?

Popular in Chat/Questions Top

peerreynders
Manning 2016 Halloween weekend sale via Deal of the Day Friday, October 28 - Half off all MEAPs - code WM102816LT Saturday, October 29 ...
332 30681 154
New
maqbool
what books/Resources do you recommend to learn about distributed system(theory)?
New
gouvermxt
I just finished the “Learn Functional Programming with Elixir (Pragprog)” book. I have 5+ years of experience with Ruby/Rails, my goal is...
New
Nopp
Hello there, i have a lot to read and to learn, but are there some books, that are focussing on how i “should” plan the architecture of ...
New
pdgonzalez872
Hi! In my quest of becoming the best Elixir dev I can be, I saw one aspect in my career that I’d like to improve upon. This is language...
New
New
InkFlo
Hi everyone, This year I’m graduated from Bachelor Degree (in computer science) from France (not really a bachelor, the exact term is “L...
New
SavagePixie
I was wondering if there are any beginner-friendly, exercise-based resources for learning Elixir out there. I’m looking for something lik...
New
RKC07
I’m new to elixir. I did some coding in python and C. I want to learn elixir for starting my career in web development. I need suggestion...
New
armanm
I know zero downtime deployment can mean different things depending on your application and what your users can tolerate so expectations ...
New

Other popular topics Top

lastday4you
I wanted to check elixir version in phoenix because i found that my elixir is 1.5 but when i use Enum.chunk_by it said the function is un...
New
lessless
I believe there are people here who are dealing with CSV files import on the daily basis, and since Excel is a really popular tool there ...
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
PeterCarter
There are pre-rolled solutions for other frameworks that do work. However, Phoenix does not seem to have these. Have people had good expe...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
chrismccord
Phoenix 1.4.0 released Phoenix 1.4 is out! This release ships with exciting new features, most notably with HTTP2 support, improved deve...
688 30877 112
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
siddhant3030
Hi, I have to write a raw query for one of my project. But till now I have used ecto queries and don’t have much experience writing raw ...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
WestKeys
Currently suffering from paralysis by [HTTP client] analysis. This is rather unusual in Elixirland as there tends to be consensus on the ...
New

We're in Beta

About us Mission Statement