Wasm3 est un interpréteur WebAssembly conçu pour l'intégration dans des runtimes embarqués. Il permet l'exécution de logique binaire portable sur des microcontrôleurs et du matériel aux ressources limitées, offrant un support pour les modules qui utilisent le WebAssembly System Interface (WASI) pour interagir avec les ressources système.
Les fonctionnalités principales de wasm3/wasm3 sont : Microcontroller Execution, Register-Based Bytecode Interpretation, Host-Call Interfaces, Runtime Embedding, Register-Based Bytecode, Embedded WebAssembly Runtimes, WASI Implementations, Bytecode Specification Validators.
Les alternatives open-source à wasm3/wasm3 incluent : janet-lang/janet — Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an… bytecodealliance/wasm-micro-runtime. webassembly/wabt — The WebAssembly Binary Toolkit is a suite of tools for inspecting, validating, and transforming WebAssembly modules… micropython/micropython — MicroPython is a lean implementation of Python 3 optimized to run on microcontrollers and other resource-constrained… webassembly/wasi-sdk — The WASI SDK is a comprehensive compiler toolchain designed to transform C and C++ source code into portable,… mruby/mruby — mruby is a lightweight Ruby interpreter designed to be embedded into C applications. It compiles Ruby source code into…
Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an embeddable scripting engine. It functions as a fiber-based concurrency runtime and includes a parsing engine based on Parsing Expression Grammars. The project is distinguished by its ability to be integrated into C or C++ applications via a minimal header interface. It utilizes a Lisp-style macro system for compile-time code transformation and employs prototype-based table inheritance for object-oriented behavior. The runtime covers a broad set of capabilities, including asynchronous
The WebAssembly Binary Toolkit is a suite of tools for inspecting, validating, and transforming WebAssembly modules between binary and human-readable representations. It includes a stack-based interpreter for executing modules and a transpiler that converts binary files into C source code and headers. The toolkit provides utilities for assembling human-readable text into binary modules and disassembling binary files back into text. It features a text formatter for normalizing definitions into a canonical flat representation and supports the conversion of binaries into S-expression formats. T
MicroPython is a lean implementation of Python 3 optimized to run on microcontrollers and other resource-constrained systems. It serves as a cross-platform embedded runtime and hardware abstraction layer, providing a firmware framework that maps high-level software commands to specific microcontroller registers across diverse processor architectures. The project functions as an embedded language interpreter that enables rapid prototyping on hardware through an interactive read-eval-print loop. It supports a wide range of target environments, including ARM, ESP32, STM32, RISC-V, and WebAssembl