elm-beam
compiles Elm to assembly that runs on the Erlang Virtual Machine.
I wrote an essay touching on the interesting parts of this project,
which you can find on my blog.
Here are some clarifications I offer in that post:
elm-beam
is a personal explorationelm-beam
is incomplete (in every sense)elm-beam
is NOT endoresed by the Elm core teamelm-beam
is NOT "Elm on the server"
Setup guide
Use stack
to build the elm-beam
executable.
# make sure you have the `elm-compiler` submodule
git submodule init
git submodule update
# build the executable
stack build
# compile the test .elm file to produce elm.beam
stack exec elm-beam debug/Main.elm
# load the BEAM module into the Erlang console and start the gen_server
erl
1> l(elm).
2> gen_server:start({local, elm}, elm, [], []).
3> gen_server:call(elm, {}).
Contributing
To those interested in continuing the exploration: join us in the #elm-beam channel on the Elm Slack.