概要
WebAssembly (Wasm) は、Webブラウザ上で高速に動作するバイナリ形式の実行ファイルです。C、C++、Rustなどの言語で記述されたコードを、ブラウザでネイティブに近いパフォーマンスで実行できます。Webアプリケーションのパフォーマンス向上や、WebAssembly を利用したデスクトップアプリケーションの実行などを実現します。
WebAssembly は、スタックマシンという仮想機械向けのバイトコードとして定義されています。これにより、様々なプログラミング言語 (C/C++, Rust, Go, AssemblyScript など) からコンパイルでき、異なるプラットフォーム間での移植性が高くなります。WebブラウザのJavaScriptエンジンによって解釈・実行されるため、JavaScript と連携して動作することも可能です。WebAssembly は、JavaScript よりもコンパクトで、パース・コンパイル速度が高速であるため、パフォーマンスに優れます。