Why would this target Elixir instead of Erlang or BEAM byte code directly?
Putting a language on top of a language on top of a language does not seem that smart to me.
Putting a language on top of a language on top of a language does not seem that smart to me.
Transpiling is common in js only because there isn't/wasn't a standard like webasm.
Do I need to have Elm installed to compile my .elm files with Elchemy?
Elchemy uses Elm to typecheck your program. It is possible to use it without Elm on your machine, while it's not advised.
So it seems that it literally transpiles Elm syntax to Elixir, the type safety relies on Elm apparently.
Targetting BEAM directly should be possible in the future, to me it looks like an attempt to save a lot of time to make Elm suitable on the server side.