Website • Features • Resources
A minimal in-place interpreter for WebAssembly bytecode (almost without) dependencies while being no_std
.
- In-place interpretation: No intermediate parsing step. This allows for fast start-up times.
no_std
support: The interpreter requires only Rust'score
andalloc
libraries allowing its use in various environments, such as bare-metal systems.- Minimal dependencies: The interpreter requires only two dependencies:
log
,libm
. - Compliance with specification: The interpreter passes almost all test from the official WebAssembly testsuite. Only SIMD instructions are missing.
- Host functions: The host system can provide functions for Wasm code to call.
For information on other features, visit our requirements page.
- Fuel & resumable execution: A fuel mechanism is used to halt execution once fuel runs out. Then fuel can be refilled and execution resumed.
- C bindings: The interpreter can be used from C code.
- Migratability: Wasm instances can be transferred between systems during their execution.
- Threading: There are multiple threading proposals, but we have not yet chosen a specific one. Some options are shared-everything-threads, threads, wasi-threads.
Multi-memory proposal, GC proposal
A fast in-place interpreter
by Ben L. Titzer: https://arxiv.org/abs/2205.01183- WebAssembly spec: https://webassembly.github.io/spec/core/index.html
- WebAssembly Opcode Table: https://pengowray.github.io/wasm-ops/
- Compiler/Interpreter Know-How Gist Compilation: https://gist.github.com/o11c/6b08643335388bbab0228db763f99219
- Mozilla Developer Network WebAssembly Homepage: https://developer.mozilla.org/en-US/docs/WebAssembly
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Copyright © 2024-2025 Deutsches Zentrum für Luft- und Raumfahrt e.V. (DLR)
Copyright © 2024-2025 OxidOS Automotive SRL