| I'll just put this here in case anyone's interested. https://github.com/mbrock/HBEAM It's a Haskell executor of .beam programs, in very early prototype stage, and I abandoned working on it 5 years ago (apparently). Of course it's not meant to be competitive in any way, it's basically just for fun, and because I wanted to learn more about how Erlang works. The function `interpret1` in the middle of this file has the main opcode switch. https://github.com/mbrock/HBEAM/blob/master/src/Language/Erl... I think it's about the smallest subset needed to run a factorial program, but also to implement the very basics of mailboxes with send/receive/timeout. It uses GHC's shared transactional memory for the mailboxes: https://github.com/mbrock/HBEAM/blob/master/src/Language/Erl... Someone, fork it and finish it! :-) |