asm.js
Striktes Subset von JavaScript, optimiert für AOT-Kompilierung. Mozilla, 2013. Typannotationen über Codes (x|0 = int, +x = double). Vorläufer von WebAssembly.
Der Pitch: C/C++ per Emscripten zu asm.js kompilieren → läuft im Browser fast so schnell wie nativer Code. Demo: Epic Citadel (Unreal Engine 3) lief 2013 im Browser. Browser (anfangs alle außer Edge) fügten spezifische Optimierungen hinzu. Die Entwicklung von asm.js zu WebAssembly: gleiches Team, gleiche Idee, aber ein Binärformat statt eines JS-Subsets. WebAssembly (2017) machte asm.js überflüssig. Lebt nur noch in historischen Benchmarks und ein paar Mozilla-Demos weiter.