Bytecode Alliance、「WebAssembly」の最新ロードマップを発表 リリース予定の新機能も紹介:コアWebAssembly、コンポーネントモデル、WASIの3分野で図解
Bytecode Allianceは、開発者向けに「WebAssembly」(Wasm)の最新ロードマップを発表した。現在進められている開発と、近くリリース予定の新機能に焦点を当てている。
Bytecode Allianceは2023年7月24日(米国時間)、開発者向けに「WebAssembly」(Wasm)の最新ロードマップを発表した。
WebAssemblyは、Webブラウザなどモダンな実行環境での効率的なコード実行とコンパクトなコード表現を実現する、低レベルフォーマットだ。World Wide Web Consortium(W3C)がコア仕様をW3C勧告として公開している。Bytecode Allianceは、WebAssemblyなどの標準をベースにクロスプラットフォーム、クロスデバイスの新しいソフトウェア基盤の構築に取り組むオープンソースコミュニティーだ。
今回発表されたロードマップは、現在進められている開発と、近くリリース予定の新機能に焦点を当てている。
「WASI Preview 2」のリリースに向けた3層のロードマップ
Bytecode Allianceは現在「WASI Preview 2」を完成させるために、以下の3つの分野に重点を置いて作業を進めている。
- コアWebAssembly仕様
- WebAssemblyコンポーネントとWebAssemblyインタフェースタイプ(WIT)
- WebAssembly System Interface(WASI)
以下のロードマップではこの3分野ごとに、「Now」「Next」「Later」「Not This Year」という時系列で予定が示されている。
「Now」列にある要素は全て、開発中もしくはマージされ、安定化段階/最初の使用段階に入っている。「Next」列にある要素は全て、2023年10月のKubeconカンファレンスまでに実現する見通しだ。「Later」列にある要素は全て、2023年に実現する可能性があるが、2024年にずれ込む恐れもある。「Not This Year」列にある要素は、2024年以降に実現される予定だ。
以下では、上に挙げた3つの分野ごとに、このロードマップの概要を見ていく。ロードマップの「Later」列にある要素(2023年に実現される予定だが、2024年にずれ込む可能性がある要素)については、カッコ内に注記する。
コアWebAssembly仕様
WebAssemblyガベージコレクションが実現される見通しだ。また、2023年中にコアWebAssemblyモジュールにより、コンポーネントでのスレッドサポートが提供される予定だ(Later)。
WebAssemblyコンポーネントとWebAssemblyインタフェースタイプ(WIT)
コンポーネントのネーミングとバージョニングが統合され、インタフェースが独立して進化するようになっている。リソースとハンドルタイプもコンポーネントモデルに追加される。2023年中に、これらの成果を取り入れた「Component Model Preview 2」と、ネイティブ非同期機能が追加された「Component Model Preview 3」がリリースされる(いずれもLater)。2024年以降に「Component Model 1.0」がリリースされる。
WebAssembly System Interface(WASI)
WASIは、コンポーネントモデルとコアWebAssembly仕様の上に構築されている。開発が進められているWASI Preview 2は、「WASI CLI」と「WASI HTTP」を含むドラフトがまず作成される。
WASI CLIには、コマンドラインインタフェース(CLI)環境の提案が含まれる。WASI HTTPには、HTTPフォワードプロキシとリバースプロキシを含む、広く実装可能なホストの共通部分を盛り込んだ環境の提案が含まれる。
WASI CLIの環境提案には、WASI IO、Sockets、Clocks、Random、FilesystemというWebAssemblyインタフェースタイプ(WIT)が含まれている。
このWASI Preview 2のドラフトが作成された後、ドキュメント、完全なテストスイートとフレームワーク、JavaScriptホスト実装(JCOによる)、Wasmtimeホスト実装が用意されてから、WASI Preview 2と「WASI Preview 3」が2023年中にリリースされる(いずれもLater)。
WASI Preview 2とWASI Preview 3には、それぞれ上記のComponent Model Preview 2、Component Model Preview 3の成果も取り込まれる。
「WASI 1.0」のリリースは、2024年以降に予定されている。
言語ツール、レジストリ、モジュラーWASIインタフェース
これら以外にも、WebAssemblyエコシステムを充実させる追加機能の開発が並行して進められている。その中には、さまざまな言語に対応する言語ツールや、コンポーネントのビルド、テスト、実行のプロセスを簡素化するレジストリ、クラウドネイティブソフトウェアなどのビルディングブロックとなるモジュラーWASIインタフェースなどが含まれている。
なお、Bytecode Allianceは、WebAssemblyのロードマップを詳しく解説した動画(英語)も公開している。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- WebAssemblyランタイム「Wasmer 4.0」公開 コマンド強化でパッケージ管理やアプリケーション公開が容易に
Wasmerは、WebAssemblyを実行するためのオープンソースランタイムの最新版「Wasmer 4.0」をリリースした。 - WebAssemblyでBashやCurlが動く、業界標準APIを拡張した「WASIX」を発表 Wasmer
Wasmerは、業界標準のAPI仕様である「WASI」を拡張してPOSIXに対応した新技術「WASIX」を発表した。WASIXを利用すれば、コードを修正することなく、既存アプリケーションをWebAssemblyで実行できる。 - Docker DesktopでWebAssemblyコンテナが実行可能に 「Docker+Wasm Technical Preview 2」公開
Dockerは、Docker DesktopでWebAssemblyコンテナを実行できるようにする「Docker+Wasm Technical Preview 2」を公開した。