Nerves is a framework meant to run on relatively beefy embedded systems (not microcontrollers) and uses the normal BEAM. AtomVM is its own VM suitable for running on microcontrollers in much more resource constrained environments than Nerves could ever get close to running on.
It'd be nice to have an 'at a glance' comparison between standard Erlang and this, to get a better idea of what's going on.
I don't know if "kind of like language X, but cut down and missing some stuff" environments have a great track record. Especially if the runtime is not the tried and true one with a lot of the kinks worked out.
If I understand correctly, Elixir builds an Erlang syntax tree and then the erlang toolchain takes over. If it runs Erlang, it should be able to run elixir
I didn't see anything in the core APIs about cryptography so any application that requires encrypted communication will have to bring their own cryptographic primitives.
At this time AtomVM will work on any board with a minimum of around 128k ram and 512k (1M recommended) flash.
This is the first thing I look for in any embedded software framework, and its rarely mentioned.
[0] https://www.atomvm.net/doc/master/getting-started-guide.html
I don't know if "kind of like language X, but cut down and missing some stuff" environments have a great track record. Especially if the runtime is not the tried and true one with a lot of the kinks worked out.
I see plenty of references to Elixir in the docs, and this official AtomVM project to provide some tooling to target AtomVM from Elixir
https://github.com/atomvm/ExAtomVM
I wish there were pictures of hardware on sample code/tutorials pages. Would be interested in seeing complete projects too.