robi last edited by
This is a significant achievement!
What is Lunatic?
Lunatic is a set of libraries and a WebAssembly runtime which allows developers to build resilient actor systems.
The people involved in the creation of WebAssembly made it fast, efficient and secure in the browser. We can benefit from this development on the backend too. That's why Lunatic chose WebAssembly instances as the abstraction for actors. Each instance has its own stack, heap and syscalls. This allows us to have completely isolated execution environments per actor, without reaching out to much heavier technologies like Docker. Another benefit of using WebAssembly is that Lunatic applications can be built in any language supporting WebAssembly as a target (like C/C++, Rust, AssemblyScript, etc).
The other part of Lunatic are the libraries exposing Lunatic's features to programming languages. This includes actor creation, message sending, networking and other functionalities. For now there is only support for Rust, but other languages are coming too. Hold tight!