.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
PCデポ、HISから出向受け入れ 最大400人、顧客の“デジタル担当者”に
企業・業界動向
2021-02-09 05:56
自動運転&自動車いす……茨城・つくば、スマートシティの実証実験
IT関連
2021-03-03 02:26
グーグル、対話型AIや言語モデルの精度向上へ–最新技術をテストできる「AI Test Kitchen」
IT関連
2022-05-13 05:20
DXで変化したIT子会社への期待–吸収合併などさまざま
IT関連
2022-10-25 12:31
UiPath、AI関連機能の日本語対応やLLMを発表
IT関連
2024-06-21 10:38
信頼性とスピードを兼ね備えた「CachyOS」–「Arch Linux」を試したい人向け
IT関連
2023-05-02 07:20
「AI先進県」へ拠点開設 栃木 企業の導入後押し
IT関連
2021-06-03 07:25
欧米では主流のBPM–日本企業が推進するためのポイント
IT関連
2024-08-31 12:14
アドバンテスト、サプライチェーン管理の最適化にコンカレントプランニング基盤を採用
IT関連
2021-07-31 00:22
DX時代を切り開く–エッジAIの可能性とは(後編)
IT関連
2022-09-29 01:05
「ウマ娘」シナリオライター募集 現場スタッフによる採用セミナーも
くらテク
2021-06-24 08:48
企業のオープンソース活動を支援するOpenInfraの「Directed Funding」
IT関連
2022-06-15 20:30
パナソニックのカメラ撤退はあり得るか :小寺信良のIT大作戦(1/4 ページ)
トップニュース
2021-05-28 10:50
思い描いた手書き文字を脳インプラントとAIで認識し毎分90文字入力、スタンフォード大が研究論文
人工知能・AI
2021-05-15 19:43