Wasm3プロジェクトがメンテナンス状態へ移行
- Wasm3プロジェクトが最小限のメンテナンス段階に入った。開発者の家が侵攻してきたロシア人によって破壊され、新機能の開発を継続できない状況。
- プロジェクトを存続させるため、プルリクエストを積極的にレビューし、マージしていくことを約束している。
- Wasm3への貢献はこれまで以上に重要になっている。
Wasm3を始める
- Wasm3のインストールガイドに従って導入を進めること。
- Wasm3はPython3、Rust、C/C++、GoLangなど、さまざまな言語やプラットフォーム向けのライブラリとして利用できる。
Wasm3の状態
- Wasm3はWebAssembly仕様のテストスイートを通過しており、多くのWASIアプリを実行できる。
- 最小限の実用システム要件は、コード用に約64Kb、RAMに約10Kb。
- さまざまなアーキテクチャ(x86、ARM、RISC-Vなど)およびプラットフォーム(Linux、Windows、OS X、Android、iOSなど)で実行可能。
Wasm3の機能
- WebAssemblyコア提案と追加機能をサポートしている。たとえば、可変グローバルのインポート/エクスポート、構造化された実行トレース、ビッグエンディアンシステム対応などが含まれる。
- まだ対応していない機能もある。たとえば、マルチメモリ、参照型、末尾呼び出し最適化などは未対応。
Wasm3の動機
- 「遅いインタープリタ」と「高速なJIT」を使い分ける理由はさまざま。速度が主要な関心事でない場面では、実行ファイルサイズ、メモリ使用量、起動遅延時間などを改善できる。
- 移植性とセキュリティを実現し、維持することがはるかに容易。
- Wasm3のようなシンプルなライブラリは、コンパイルして既存プロジェクトに統合しやすい。
- 一部のプラットフォーム(例: iOS、WebAssembly自体)では、ランタイム時に実行可能なコードページを生成できず、JITを使えない。
Wasm3の応用分野
- Wasm3は研究プロジェクトとして始まり、さまざまな環境でエンジンを評価することが研究の一部となっている。
- Lua、JS、PythonなどがMCU上で動作するのと同様に、WebAssemblyは有望な代替手段である。
- エッジコンピューティング、スクリプティング、プラグインシステム、IoTルール実行、スマートコントラクトなど、実用的なユースケースがある。
GN⁺の意見
- Wasm3プロジェクトは、開発者の個人的な困難にもかかわらず、コミュニティの貢献によって維持されており、これはオープンソースプロジェクトの回復力と協力の重要性を示している。
- Wasm3は、さまざまなプラットフォームとアーキテクチャでWebAssemblyを実行できる汎用インタープリタとして、組み込みシステムにおけるWebAssembly活用の可能性を探るうえで重要な役割を果たしている。
- プロジェクトが移植性とセキュリティに重点を置いていることは、WebAssemblyが組み込みシステムのような制約の大きい環境でも有用なツールになり得ることを示唆している。
1件のコメント
Hacker Newsの意見
原文投稿者(OP)の参加
Wasm3への愛着と懸念
Wasm3プロジェクトの現状説明
コメント削除済み