Life is a secure, blazing-fast, cross-platform, and modular WebAssembly VM written in Go, built for running computationally heavy code on practically any device you can imagine.
At Perlin, we developed Life to be:
Fast — Life uses a wide range of optimization techniques and is far more performant than quite a number of different WebAssembly implementations we’ve tested (such as go-interpreter/wagon and paritytech/wasmi).
Correct — Life was built from the WebAssembly reference manual, and thus passes most of the official test suite (66/72 passed, none of the failures are related to the execution semantics).
Secure — User code executed on Life is fully sandboxed. A WebAssembly module’s access to resources (instruction cycles, memory usage) may easily be controlled to the very finest detail.
Pure — Life does not rely on any native dependencies, and may easily be cross-compiled for running WebAssembly modules on practically any platform (Windows/Linux/Mac/Android/iOS/etc).
Practical — Life makes full use of the minimal nature of WebAssembly to write code once and run anywhere. Every single part of Life may be modularized and used for whatever interests developers may have in mind.
With that being said, we seek for Life to be a tool that any project may easily integrate into their applications for the sake of running WebAssembly code anywhere with ease.