WebAssembly-Browser-Vorschau
Heute freuen wir uns, zusammen mit Firefox und Edge eine WebAssembly-Browser-Vorschau anzukündigen. WebAssembly oder Wasm ist ein neues Laufzeit- und Kompilierungsziel für das Web, entwickelt von Mitarbeitern von Google, Mozilla, Microsoft, Apple und der W3C WebAssembly Community Group.
Was markiert diesen Meilenstein?
Dieser Meilenstein ist bedeutsam, weil er Folgendes markiert:
- einen Release-Kandidaten für unser MVP (Minimum Viable Product)-Design (einschließlich Semantik, Binärformat und JS-API)
- kompatible und stabile Implementierungen von WebAssembly hinter einer Flagge im Hauptzweig von V8 und SpiderMonkey, in Entwicklungs-Builds von Chakra und in Arbeit in JavaScriptCore
- eine funktionierende Toolchain für Entwickler zur Kompilierung von WebAssembly-Modulen aus C/C++-Quelldateien
- einen Fahrplan zur Veröffentlichung von WebAssembly standardmäßig aktiviert, vorbehaltlich Änderungen basierend auf Feedback aus der Community
Weitere Informationen zu WebAssembly finden Sie auf der Projektseite sowie in unserem Entwicklerhandbuch, um die WebAssembly-Kompilierung aus C & C++ unter Verwendung von Emscripten zu testen. Die Dokumente zum Binärformat und zur JS-API erläutern die binäre Codierung von WebAssembly und den Mechanismus zur Instanziierung von WebAssembly-Modulen im Browser. Hier ist ein kurzes Beispiel, das zeigt, wie wasm aussieht:
Da WebAssembly in Chrome (chrome://flags/#enable-webassembly) noch hinter einer Flagge steht, wird es noch nicht für den Einsatz in der Produktion empfohlen. Die Browser-Vorschau markiert jedoch eine Zeit, in der wir aktiv Feedback zum Design und zur Implementierung der Spezifikation sammeln. Entwickler werden ermutigt, Anwendungen zu testen, zu kompilieren und zu portieren und diese im Browser auszuführen.
V8 optimiert weiterhin die Implementierung von WebAssembly im TurboFan-Compiler. Seit dem letzten März, als wir die experimentelle Unterstützung erstmals angekündigt haben, haben wir die Unterstützung für parallele Kompilierung hinzugefügt. Außerdem nähern wir uns der Fertigstellung einer alternativen asm.js-Pipeline, die asm.js in WebAssembly im Hintergrund konvertiert, damit bestehende asm.js-Websites einige der Vorteile der WebAssembly-Kompilierung im Voraus nutzen können.
Was kommt als Nächstes?
Sofern keine wesentlichen Designänderungen aufgrund von Feedback aus der Community erfolgen, plant die WebAssembly Community Group die Erstellung einer offiziellen Spezifikation im ersten Quartal 2017, zu welchem Zeitpunkt Browser dazu ermutigt werden, WebAssembly standardmäßig aktiviert auszuliefern. Ab diesem Punkt wird das Binärformat auf Version 1 zurückgesetzt und WebAssembly wird versionlos, feature-geprüft und abwärtskompatibel sein. Einen detaillierteren Fahrplan finden Sie auf der WebAssembly-Projektseite.