Emscripten
Emscriptenは、CおよびC++ソースコードを、主にウェブブラウザ上で実行することを目的として、WebAssembly(または、2017年にWebAssemblyが登場するまで当初のターゲットであった、asm.jsとして知られるJavaScriptのサブセット)にコンパイルする、LLVM/Clangベースのコンパイラ。
Emscriptenを利用することで、CまたはC++で書かれたアプリケーションやライブラリを事前コンパイルして、ウェブブラウザ上で効率的に、特に動的にコンパイルされたあるいはインタプリタ実行されたJavaScriptと同等か、より速いスピードで実行することが可能になる。さらに最新のWebAssembly System Interface(WASI)の開発成果物とNode.js、Wasmtime、WasmerなどのWebAssemblyランタイムと組み合わせると、Emscriptenは非Web環境で実行するためのWebAssembly埋め込み用にコンパイルすることもできる。