Consider I'm Jose Valim and it's 2010. I have a great idea of implementing Elixir on Top of Erlang and BEAM. What do you recommend to read/study?

I’m not planning to implement a language on BEAM. I’m neither that much talented. I’m just curious.
@josevalim, @lpil, @wende, what did you guys study (or have already studied) before starting to implement these languages on BEAM? Please be as detailed as you can!

1 Like

I though I had watched a talk of him explaining the “why” and the “way” behind elixir, though all I can find right now is a podcast interview touching that topic.

As that podcast is on my list I am perhaps misremembering things and I hadn’t seen a talk but listened to that podcast episode.

I have not yet clicked into the episode to verify if its really what I expect. I just link it here as I’m in the office and there should be a meeting any minute now…

1 Like

I think the initial post was about resources for one who would like to implement a new compiler and the tooling around the language.

1 Like

All sorts really! What you want to research will depend on what you want to implement. I spent quite a lot of time reading about the hindley milner type system.


Learning only about hindley milner type system won’t make you implement a new language on BEAM. Also Gleam is more different than Erlang comparing to Elixir which is more similar to Erlang. So you might have studied a range of subjects before starting to implement Gleam.

Anything specific, like a book on Compiler design etc? Or if there is some guide provided by Erlang’s official docs etc on how to create a language for BEAM.

I’ve been building compilers for years so there wasn’t any particular material or subject I studied to make Gleam beyond HM types I’m afraid. Gaining the other knowledge was a slow and unfocused process so I don’t have any good resources or tips to share.