Repolode
wasm3

wasm3/wasm3

マイクロコントローラーにも載せられる小型の、C製高速WebAssemblyインタープリター。多くの言語からライブラリとして組み込めます。

スター
8,077
フォーク
538
未解決の Issue
21
最終コミット
先月

これは何?

Wasm3はCで書かれたWebAssemblyインタープリターです。ネイティブコードを生成せずにWASMモジュールを実行するため、ランタイムを小さく、移植しやすく保てます。プロジェクトが示す最小要件は、コードがおよそ64 KB、RAMが10 KBです。そのため、ESP32やArduinoボードなどのリソースに制約のあるハードウェアに加え、Linux、Windows、macOS、Android、iOSも対象としています。

WebAssembly仕様のテストスイートに合格しており、多くのWASIアプリケーションを実行できます。bulk memory operations、例外処理、複数メモリー、tail calls、reference typesなど、さまざまな提案機能に対応しています。実行トレース、gas metering、一時停止・再開用スナップショット、リソース上限設定などの追加機能も備えています。

Wasm3は単体ツールとしても、ライブラリとして組み込んでも利用できます。Python、Rust、Go、Zig、.NET、Swift、Nim、Arduino/PlatformIO向けのバインディングが用意されています。

主な機能

  • 01JITを使わないインタープリター方式の実行により、実行時のコード生成が禁止されたプラットフォームにも適しています
  • 02WebAssembly仕様のテストスイートに合格しており、多くのWASIアプリを実行できます
  • 03約64 KBのコードと10 KBのRAMで、ESP32やArduinoなどのMCU上で動作します
  • 04bulk memory、例外処理、tail callsなど、複数のWebAssembly提案機能に対応しています
  • 05gas metering、リソース上限設定、実行トレース、一時停止・再開用スナップショットを提供します

ユースケース

  • マイクロコントローラー上で、サンドボックス化されたプラグインやIoTルールを実行する
  • C、Python、Rust、GoのアプリケーションにWASMスクリプト機能を組み込む
  • JITを利用できないLinux、Windows、モバイル端末でWASIプログラムを実行する
  • エッジコンピューティング製品や組み込み製品に、移植性の高いサンドボックス化ランタイムを追加する

クイックスタート

  1. 1

    README にリンクされているインストール手順(docs/Installation.md)に従ってください

使う前に知っておきたいこと

  • メンテナーは最小限のメンテナンス段階に入っており、新機能の開発は行っていませんが、プルリクエストのレビューとマージは引き続き行っています。
  • インタープリターとして動作するため、JITベースのWebAssemblyランタイムより低速です。

収録されている特集

トピック

よくある質問

wasm3 とは?
マイクロコントローラーにも載せられる小型の、C製高速WebAssemblyインタープリター。多くの言語からライブラリとして組み込めます。 Wasm3はCで書かれたWebAssemblyインタープリターです。ネイティブコードを生成せずにWASMモジュールを実行するため、ランタイムを小さく、移植しやすく保てます。プロジェクトが示す最小要件は、コードがおよそ64 KB、RAMが10 KBです。そのため、ESP32やArduinoボードなどのリソースに制約のあるハードウェアに加え、Linux、Windows、macOS、Android、iOSも対象としています。
wasm3 は無料で使えますか?ライセンスは?
wasm3 は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
wasm3 は今もメンテナンスされていますか?
半年以内に更新あり。wasm3 の最終コミットは 2026年9月30日 です。
wasm3 は何に使えますか?
マイクロコントローラー上で、サンドボックス化されたプラグインやIoTルールを実行する C、Python、Rust、GoのアプリケーションにWASMスクリプト機能を組み込む JITを利用できないLinux、Windows、モバイル端末でWASIプログラムを実行する エッジコンピューティング製品や組み込み製品に、移植性の高いサンドボックス化ランタイムを追加する
wasm3 のインストール方法は?
README にリンクされているインストール手順(docs/Installation.md)に従ってください
wasm3 はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/wasm3/wasm3

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト