0.2.0)仕様が承認され、安定版に到達したことが明らかになりました。Type)」を基盤にしたものになっています。2がどのような背景の下で登場したのか、簡単にこれまでのWebAssemblyの歴史を振り返ってみましょう。Chrome、Firefox、Safariなど事実上全てのモダンブラウザが対応しました。これによりWebAssemblyはプロセッサのアーキテクチャに依存せず、x86プロセッサでもArmプロセッサでもRISC-Vプロセッサでも高速に実行可能な、ユニバーサルなバイナリフォーマットとして知られるようになります。RustやGoなどさまざまなプログラミング言語がWebAssemblyバイナリを生成可能です。このような多言語対応もWebAssemblyの特徴の1つです。1の登場で、例えばOSによって異なるファイルシステムへのアクセスなどが抽象化されました。1対応ランタイムを用いることでWebブラウザでもmacOSでもLinuxでもWindowsでも、そのまま実行可能になりました。1に対応したことで、WebAssemblyは単一アプリケーションでのクロスプラットフォーム対応を実現したのです。Chromeを始めとするWebAssemblyランタイムに実装されるようになりました。これによりプログラミング言語をWebAssemblyに対応させる際に、プログラミング言語自身でガベージコレクタを実装する必要がなくなります。以前より容易にさまざまなプログラミング言語がWebAssemblyに対応可能になりました。このガベージコレクション機能を利用して、KotlinやDartといったプログラミング言語がWebAssembly対応を進めています。今後さらに多くのプログラミング言語がWebAssembly対応になると見られます。1にはいくつかの課題がありました。その後、WASIの仕様を拡張してさまざまな機能を拡充していく際にはモジュール的にAPIを追加していく予定でした。UNIXがCで実装されたOSであるという歴史的経緯からPOSIXもC言語を指向したAPIとなっています。1はこのPOSIXを手本にしたことで、多言語でインターフェイスを実装するのに向いていないこと、ソケットは十分にサポートできず、インターフェイスの仮想化も困難、コンポーネントを組み合わせるためのインターフェイスとして用いるのが困難、などの課題が浮かび上がりました。Meeting」で説明しています。下記はその動画内で説明に使われたスライドです。0.2.0)なのです。Type)を基盤にしています。コンポーネントモデルによるコンポーネントとは、実体はWebAssemblyファイルであり、そのなかに1つから複数のWebAssemblyモジュールを含んでいます。WITで表現されるコンポーネントのインターフェイスは、プロセッサのアーキテクチャやOS、開発に用いられたプログラミング言語に依存せず相互に通信できるようになっています。WITは、コンポーネントのインターフェイスを主にfunction(関数)とType(型)によって記述することで、コンポーネントの入出力を定義します。下記はそのサンプルコードです。hostというインターフェイスにはlogという関数があり、その関数はstring型の引数が1つとなっている、といったことが記述されています。string);}このWITを基に、さまざまなプログラミング言語に対応したコンポーネントの初期コードの生成を可能にするツールなども用意される予定です。Worldsによってコンポーネントの外部のアプリケーションとの入出力についてより上位のレベル、例えば「HTTPプロキシ」としてのやりとりや「コマンドラインツール」としてのやりとりを記述できます。Worldsの実装を内部定義したものとも言えます。今後さまざまなWorldを実装したコンポーネントが登場することが期待されます。2は、このコンポーネントモデルとWITを基盤に次の7つのシステムインターフェイスも公開されました。4と進化していく予定です。3では、非同期コンポーネントの実現などについてフォーカスしていく予定だとされています。プログラミング言語Publickey広告.NET帳票ツール。デザイナはExcel。クラウド/サーバー環境対応。.NET5/6/8に対応。デザイナはExcelのため、エンドユーザーも編集可能。ノーコードでCSVファイルから帳票を出力する、CSVReportも新収録。Auroraのシャーディングによる負荷分散を、スケーラブルなNewSQLデータベース「TiDB」で置き換えへ。Niino(jniino)IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。Feed最新記事10本GitHubで最も使われている言語、PythonがJavaScriptを抜いて1位に。生成AI関連プロジェクト急増で。Sonnetが選択可能に。100」の仮想マシンを正式提供開始JetBrains、JavaScript/TypeScriptのためのIDE「WebStorm」と.NETのためのIDE「Rider」、非商用利用ならば無償で利用可能に。1.0」、12月に正式リリース予定。MemoryDBで提供開始Webブラウザ上でWebAssembly製コンパイラによりC言語をWebAssemblyにコンパイル、そのまま実行可能に。