How did the first Erlang compiler get written?
(or: how was Erlang bootstrapped?) In Joe’s words: ” First I designed an abstract machine to execute Erlang. This was called the JAM machine; JAM = Joe’s Abstract Machine. ” ” Then I wrote a compiler from Erlang to JAM and an emulator to see if the machine worked. Both these were written in prolog. ” ” At the same time Mike Williams wrote a C emulator for the JAM. ” ” Then I rewrote the erlang-to-jam compiler in Erlang and used the prolog compiler to compile it. The resultant object code was run in the C emulator. Then we threw away prolog.