.NETでWebAssemblyの最新仕様「WASI Preview 2」対応コンポーネントを作れる「componentize-dotnet」、Bytecode Allianceがオープンソースでリリース

今回は「.NETでWebAssemblyの最新仕様「WASI Preview 2」対応コンポーネントを作れる「componentize-dotnet」、Bytecode Allianceがオープンソースでリリース」についてご紹介します。

関連ワード (一方、構築、開発環境等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


WebAssemblyの普及と発展を目的とするByteCode Allianceは、WebAssemblyのコンポーネントモデルである「WASI Preview 2」仕様に対応したコンポーネントを、C#などの.NETテクノロジーを使って開発できるツール「componentize-dotnet」をオープンソースとしてリリースしました。

「componentize-dotnet」をBytecode Allianceがオープンソースでリリース

WASI Preview 2はWebAssemblyのコンポーネントモデル

WebAssemblyはもともと、Webブラウザ上で高速に実行可能なバイナリフォーマットとして登場しました。さまざまなプログラミング言語から生成可能なバイナリであり、OSやCPUに依存せずさまざまなコンピュータで高速に実行できる点を特徴としています。

現在ではWebブラウザから独立したスタンドアロンのWebAssemblyランタイムが登場したことで、サーバサイドでの利用も広がっています。

このWebAssemblyにコンポーネントモデルを持ち込むための仕様が「WebAssembly System Interface Preview 0.2」(省略して「WASI P2」と記述されることもあります)です。

つまりWebAssemblyで作られたソフトウェアを部品として組み合わせていくことで、1つの大きなアプリケーションを構築していくことができるようになるというものです。

一般に、現代のソフトウェアコンポーネントはソースコードのレベルで実装されています。JavaScriptで作られたUIコンポーネントや、Javaで作られたサーバコンポーネントなどはその典型でしょう。

この場合、プログラミング言語を超えてソフトウェアコンポーネントを利用することはできません。例えば、Dartで書かれたFlutterのコードの中でJavaScriptのUIコンポーネントを使うことも、PHPのコードに書かれたコンポーネントを組み合わせることも、一般論としてできません。

しかしWASI P2ではWebAssemblyのバイナリフォーマットとしてコンポーネントモデルが定義されているため、異なるプログラミング言語で作られたコンポーネントであっても自由に組み合わせられる、ソフトウェアコンポーネントの再利用が大きく発展する可能性を備えた画期的なコンポーネントモデルとされています。

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

WASI P2コンポーネント開発環境

WASI P2は今年(2024年)1月に安定版になり、WasmTimeを始めとするWebAssemblyランタイムでの実装も進む一方で、対応するコンポーネントを生成するためのツールの整備が課題でした。

そこで登場したのが今回の「componentize-dotnet」です。

このツールはWASI P2に対応したコンポーネントを生成するための以下のツールが1つにパッケージングされています。

  • NativeAOT-LLVM (compilation)
  • wit-bindgen (WIT imports and exports)
  • wasm-tools (component conversion)
  • WASI SDK (SDK used by NativeAOT-LLVM)

これにより開発者はツールの種類やバージョンの選択などに悩むことなく、一連のワークフローとしてコンポーネント開発が可能になります。

現時点でコンパイラ(NativeAOT-LLMコンパイラ)はWindows環境のみ対応となっていますが、LinuxやMacにも対応する予定とされています。

WASI P2対応コンポーネントの開発環境は展開が始まったばかりです。今後さまざまなプログラミング言語や開発環境において充実されていくことが期待されます。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
警察庁、サイバー局創設へ 中露北の攻撃警戒、直接捜査も
IT関連
2021-06-26 17:19
富士通、NECら9者が「共創」–偽情報対策プラットフォーム構築へ
IT関連
2024-10-19 18:06
“バズる動画”はどう作る? ファンの増やし方は? TikTok、専用サイトでノウハウ公開
アプリ・Web
2021-01-26 10:02
新型コロナに対抗する投資家たち、アイルランドの投資家へインタビュー(後編)
VC / エンジェル
2021-02-19 20:11
今週の記事ランキング(2021.3.14〜3.18)
IT関連
2021-03-20 11:13
2023年までに1000量子ビットの量子処理ユニット(QPU)完成を目指すフランスPasqalが約32億円のシリーズA調達
ハードウェア
2021-07-21 02:11
欧州発の強みを生かす–Vade買収で日本に本格進出するホーネットセキュリティ
IT関連
2024-12-05 22:10
米司法省、トランプ政権下でもグーグルに「Chrome」の売却を要求
IT関連
2025-03-12 15:44
バッタの耳をロボットのセンサーに バイオハイブリッドロボット「Ear-Bot」 :Innovative Tech
トップニュース
2021-03-13 02:22
東京都足立区、災害時のコミュニケーションツールに「POCKETALK W」を採用
IT関連
2022-04-07 20:33
日本で大型データセンター合弁事業を展開–三井物産と英フィデリティ
IT関連
2021-08-13 23:38
産業用熱の取り組みで10年後の全世界におけるCO2排出量1%削減を目指すRondo
IT関連
2022-03-01 21:27
Meta、第2世代「MTIA」チップ発表–前世代に比べ3倍高速
IT関連
2024-04-13 08:17
サイバーセキュリティへのAI活用、専門家は優先事項ながら障壁も
IT関連
2024-07-09 17:55