Execution engine

Emilua will simplify the development of your responsive applications by absorbing the challenges of building a highly concurrent and parallel easy-to-use engine. From a single Lua VM dealing with complex async IO interactions to Luaproc-like setups or even many heterogeneous thread pools, Emilua is up to the challenge.

Fibers

Avoid the callback-hell syndrome, and enjoy tried-and-true sync primitives when you opt for shared-memory concurrency. Emilua offers a complete fiber API. You don’t need to migrate to Lua 5.4 to enjoy cleanup handlers (to-be-closed variables). Use cleanup handlers directly from LuaJIT instead.

Cross-platform

Emilua is powered by the battle-tested and scar-accumulating Boost.Asio library to drive IO and it’ll make use of native APIs in a long list of supported platforms. And processor ISA support will be limited by LuaJIT availability.

Network IO

Forget about NodeJS' back-pressure. We have a differen take on IO: A low-level composable approach is used so you can cater the framework policies to your application needs.

IPC

Secure compartmentalised application development is, of necessity, multiprocess-based distributed application development. Are you building the next crypto altcoin thing that needs to parse or run untrusted code (or just a chat application that show images from untrusted sources)? Sandbox the attack surface and use the wide gamut of IPC primitives Emilua has to offer.

Filesystem

An API to transparently deal with portability madness. Whether you're on Windows or UNIX systems, the same interface is available..

Commercial projects

A friendly license, and support tailored to your needs available for contract.

Qt

Create beautiful GUIs using the optional Qt Quick plugin.

Emilua is an execution engine for the Lua programming language. It offers to users of the Lua programming language, a runtime similar to what NodeJS offers for JavaScript. That is, it offers a concurrency runtime that abstracts IO operations offered by the underlying OS.Whether your Lua program runs on Windows, Linux, or FreeBSD, the same IO interfaces will be available.