This is so cool. A key benefit is that it's not embedding the C Lua runtime and compiler, but rather implements Lua in the host language (Elixir/Erlang).<p>When sandboxing user code in another runtime, you need to serialize the data to and from that runtime. That comes with a performance penalty.<p>So, for example, if you sandbox code in WASM, you need to pick a transport data format, like JSON. You need to serialize Elixir data structures into JSON, send it to WASM, and then deserialize the result. For a high-performance data pipeline, this adds up!<p>But if your sandbox is in the host language, no serialization/de-serialization is required. You can execute the sandboxed language in microseconds.<p>I wrote more about this here:
<a href="https://blog.sequinstream.com/why-we-built-mini-elixir/" rel="nofollow">https://blog.sequinstream.com/why-we-built-mini-elixir/</a><p>Wish this library existed just a couple months ago!