Rust言語、WebAssemblyでコンポーネントモデルを実現する「WASI Preview 2」対応を発表

2024年4月12日

Rust言語がWebAssemblyでコンポーネントモデルなどを実現するWASI 0.2(もしくはWASI Preview 2:WebAssembly System Interface Preview 2)に対応することを明らかにしました

fig

Rust言語はWebAssemblyアプリの開発に人気

Rust言語は、C言語のように低レベルのシステム開発向けに作られた言語です。不正なメモリ領域を指すポインターなどを許容しない安全なメモリ管理と、マルチスレッド実行においてデータ競合を排除した高い並列性を実現している点が特長です。

WebAssemblyアプリケーションを開発するために使われる言語としても人気が高く、WebAssembly関連の調査では、WebAssemblyアプリケーション開発で最も使われている言語として3年連続で1位となっています

WASI Preview 2ではコンポーネントモデルを実現

そのWebAssemblyアプリケーションにおいて、OSやプラットフォームの依存性をなくすために策定された業界標準がWASIです。

もともとWebAssemblyはWebブラウザ上で高速に実行するためのバイナリフォーマットとして策定されましたが、その後OS上でWebAssemblyバイナリを実行できるスタンドアロンのWebAssemblyランタイムが登場しました。

WebブラウザやさまざまなOS上でWebAssemblyアプリケーションする際に、OSやプラットフォームのAPIを抽象化することで、WebAssemblyアプリケーションのポータビリティを実現する業界標準仕様としてWASIが策定されました。

そのWASIは最初のバージョンとなるWASI Preview 1で、POSIXの基本的な要素を元に作られました。

参考:WebAssemblyをWebブラウザ以外の実行環境へ。システムインターフェイスへのアクセスを可能にする「WASI」の策定開始。Mozillaが呼びかけNode.jsらが賛同

そして今年(2024年)1月に安定版に到達したWASI Preview 2では、OSや開発に用いられたプログラミング言語に依存せず、WebAssemblyで作られたモジュールを自由に組み合わせてアプリケーションを構築できるコンポーネントモデルを中心とした強力な仕様となりました。非同期IO、ネットワーキング、HTTPなどのさまざまな機能やインターフェイスも用意されます。

参考:WebAssemblyを進化させる「WASI Preview 2」が安定版に到達。OSや言語に依存しないコンポーネントモデルを実現

ただしWASI Preview 2はWASI Preview 1とは互換性がないため、移行には注意が必要となります。

2024年末にはWASI Preview 2への対応完了

RustのWASI Preview 2への対応は、5月に予定されているRust 1.78で「wasm32-wasip」ターゲットが導入され開始されます。ただしこの時点ではまだstdlibのサポートなど多くの機能が欠けており、2024年中は対応作業が進められます。

そして2024年末には対応作業の完了が期待されています。

RustのWASI Preview 2対応により、Rustから生成されたさまざまなWebAssemblyコンポーネントを組み合わせてアプリケーションを構築できるようになることが期待されるとともに、おそらくは多元と比較して早期にWASI Preview 2への対応を行うことで、WebAssemblyアプリケーションの開発言語としてさらに人気を高めることになるはずです。

あわせて読みたい

WebAssembly プログラミング言語 Rust




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本