The Lunatic team writes about their Erlang-inspired WebAssembly runtime and about Rust, sandboxing and building concurrent servers.
HN commenters bring up Lunatic as a comparable project to Erlang-style runtimes, alongside wasmCloud, though one notes development seems to have stalled.
I don't have empirical evidence (nor experience) to hand, but I doubt there's any shortage of individual systems that do some sort of parallel/concurrent work faster than Erlang systems, built on lower-level concurrency primitives offered on the JVM, in golang, Rust etc.
More narrowly though, there is a candidate for a means of building systems from higher level, BEAM-like primitives with potential for greater performance than Erlang/Elixir - Lunatic (https://lunatic.solutions/). It is admittedly a kind of reimplementation of the BEAM, which maybe makes Virding's point. But it's not ad hoc.
We're not using BEAM directly, but I find it pretty neat and spent some time reading up on it when getting started with this. I'm pretty excited by https://lunatic.solutions are doing as well, as an approach to bringing the ideas behind BEAM to WebAssembly. Ultimately, I explored WebAssembly for a while and realized that there was more of a market if we could run containers instead of just WebAssembly modules. (The result of my work in that direction lives on as Stateroom: https://github.com/drifting-in-space/stateroom)
Very cool, and the approach demonstrated might be of interest to a similar problem we have in Ambient (our WASM game runtime that has competing processes that may need to retry interactions.)
That being said - what’s the relation to Lunatic [0]? Are you still working on Lunatic? Is this a side project? Or is it something completely separate?
[0]: https://lunatic.solutions/
With lunatic [0] we are trying to bring this to all languages that compile to WebAssembly. A few days ago I wrote about our journey of bringing it to Rust: https://lunatic.solutions/blog/writing-rust-the-elixir-way-1.5-years-later/
[0]: https://github.com/lunatic-solutions/lunatic
Did you have any applications in mind when you were designing this? Any weakness in precedents that you wanted to rectify? Are you familiar with Lunatic (https://lunatic.solutions/), and wasmCloud (https://wasmcloud.com/) ?
Sorry, a better link would have been https://lunatic.solutions/blog/rust-without-the-async-hard-part/
Just wanted to comment on the async part that interesting solutions are being developed.