WebAssembly ガイド

WebAssembly ガイドでは、高水準の概念、さまざまな言語からのコンパイル、Wasm バイナリー形式のテキスト表現、WebAssembly の実行方法などのトピックについて説明しています。

C/C++ から WebAssembly へのコンパイル

C/C++ のような言語でコードを書いたら、Emscripten などのツールを使って WebAssembly にコンパイルすることができます。どのように作業するかを見てみましょう。

Rust から WebAssembly にコンパイル

Rust のコードがあれば、それを WebAssembly (Wasm) にコンパイルすることができます。このチュートリアルでは、Rust プロジェクトを WebAssembly にコンパイルし、既存のウェブアプリケーションで使用する方法を示します。

WebAssembly JavaScript API の使用

これまでに Emscripten などのツールを使用して他の言語からモジュールをコンパイルしたり自分自身のコードを読み込んでして実行したりしました。次のステップは他の WebAssembly JavaScript API の使い方について学ぶことです。この記事では知る必要があることを説明します。

WebAssembly コードの読み込みと実行

JavaScript で WebAssembly を使用するには、まずコンパイル/インスタンス化の前にモジュールをメモリーにプルする必要があります。この記事では、WebAssembly バイトコードをフェッチするために使用できるさまざまなメカニズムのリファレンスと、それをコンパイル/インスタンス化して実行する方法について説明します。

WebAssembly テキスト形式から Wasm への変換

WebAssembly には S 式ベースのテキスト表現があります。これはテキストエディター、ブラウザーの開発者ツールなどで見せるために設計された中間表現です。この記事では、これがどのように動作するか、テキスト形式のファイルを Wasm 形式に変換するのに利用可能なツールの使用方法について少し説明します。

WebAssembly テキスト形式の理解

WebAssembly を人間が読んだり編集したりできるようにするため、 Wasm バイナリー形式にはテキスト表現が存在します。これはテキストエディター、ブラウザーの開発者ツールなどで見せるために設計された中間表現です。この記事では、テキスト形式のしくみ、生の構文、および元のバイトコードの表現との関係 (と JavaScript で Wasm を表現したラッパーオブジェクト) について説明します。

WebAssembly の概要

この記事では、WebAssembly がどのように機能しているか、その目標、解決している問題、ウェブブラウザーのレンダリングエンジン内での動作などの概念について説明します。

エクスポートされた WebAssembly 関数

エクスポートされた WebAssembly 関数は WebAssembly 関数が JavaScript でどのように表現されるのか、この記事では、もう少し詳しく説明します。

既存の C モジュールから WebAssembly へのコンパイル

WebAssembly の主な用途は、既存の C ライブラリーのエコシステムを取得し、開発者がウェブ上でそれらを利用できるようにすることです。

関連情報