Website • Features • Our Works • Resources
A minimal in-place interpreter for WebAssembly 2.0 bytecode (almost without) dependencies while being no_std.
- In-place interpretation: No intermediate representation, directly interprets WebAssembly bytecode. This allows for fast start-up times.
no_stdsupport: The interpreter requires only Rust'scoreandalloclibraries allowing its use in various environments, such as bare-metal systems.- Minimal dependencies: The interpreter requires only one dependency:
libm.logis also supported but disabled by default. - Compliance with specification: The interpreter passes all tests from the official WebAssembly testsuite, except for the unfinished proposal tests. See
GlobalConfigintests/specification/mod.rsfor the default spec-test filter regex. - Returning host functions: The host system can provide functions for Wasm code to call. Contrary to other Wasm runtimes, host functions are not owned by the interpreter. Instead control flow is returned back to the user, when Wasm code calls a host function.
- Fuel & resumable execution: A fuel mechanism is used to halt execution once fuel runs out. Then fuel can be refilled and execution resumed.
For information on other features, visit our requirements page.
- C bindings: The interpreter can be used from C code.
- Migratability: Wasm instances can be transferred between systems during their execution.
- Threading: Support for the Threads Proposal is work-in-progress. The Shared-Everything Threads Proposal is also of interest.
- Flexible Allocation API: Custom Allocators should be configurable. There is still some uncertainty, especially regarding the use of the Rust Allocator API.
- GC proposal
We provide various examples for how to use this interpreter. It is recommended to start
with examples/function_invocation.rs. The crate's top-level
documentation may provide general guidance as well.
Furthermore, the utility crates checked, interop, linker and registry exist. However, these
lack documentation in comparison to the core crate.
Click to show more information:
WebAssembly in Avionics: Decoupling Software from Hardware
Link (Open Access): https://elib.dlr.de/201323/
@INPROCEEDINGS{zaeske_wasm_2023,
author={Zaeske, Wanja and Friedrich, Sven and Schubert, Tim and Durak, Umut},
booktitle={2023 IEEE/AIAA 42nd Digital Avionics Systems Conference (DASC)},
title={WebAssembly in Avionics: Decoupling Software from Hardware},
year={2023},
volume={},
number={},
pages={1-10},
url={https://elib.dlr.de/201323/},
keywords={Couplings;Virtual machine monitors;Full stack;Aerospace electronics;Webassembly;Software;Hardware;Virtual machines;Certification;Application programming interfaces;Avionics;Wasm;ARINC 653;Software},
doi={10.1109/DASC58513.2023.10311207}
}On the Design of a WebAssembly Interpreter for Safety Critical Avionics Applications
Link (Open Access): https://elib.dlr.de/219593
@INPROCEEDINGS{zaeske_wasm_2025,
author={Zaeske, Wanja and Önem, A. Cem and Hartung, Florian and Durak, Umut},
booktitle={2025 AIAA DATC/IEEE 44th Digital Avionics Systems Conference (DASC)},
title={On the Design of a WebAssembly Interpreter for Safety Critical Avionics Applications},
year={2025},
volume={},
number={},
pages={1-10},
url={https://elib.dlr.de/219593/},
keywords={Codes;Instruction sets;Aerospace electronics;Webassembly;Software;Hardware;Safety;Space exploration;Certification;Standards;Avionics;Wasm;ED-12C/DO-178C;ED-217/DO-332},
doi={10.1109/DASC66011.2025.11257180}
}- A fast in-place interpreter by Ben L. Titzer
- WebAssembly: Website, Spec 2.0 on W3C, Spec 2.0 as PDF,
- Mozilla Developer Network - WebAssembly Homepage
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-2026 Deutsches Zentrum für Luft- und Raumfahrt e.V. (DLR) Copyright © 2024-2025 OxidOS Automotive SRL