01.22.2024 - By Vanessa Otto, Peter Kröner, Hans Christian Reinl, Stefan Baumgartner, Christian »Schepp« Schaefer
Mit unserer Gästin, der Entwicklerin und Trainerin Martina Kraus sprachen wir
zuletzt über das Thema Revision 482: Angular im Jahr 2021. Dieses Mal sollte es
nicht um Angular gehen, sondern um WebAssembly. Fasten your seatbelts!
SCHAUNOTIZEN
[00:01:33] WEBASSEMBLY – VERGANGENHEIT, GEGENWART UND ZUKUNFT
Wir beginnen mit einem kleinen Recap, was WebAssembly denn überhaupt ist:
WebAssembly ist eine von JavaScript-Engines abgeleitete, plattformunabhängige
Ausführungsumgebung, die es ermöglicht, Code aus anderen Programmiersprachen
dafür umzuwandeln und ihn dann nahezu in Originalgeschwindigkeit auszuführen.
Die ersten Umgebungen, die WebAssembly unterstützt haben, waren die Browser.
Alle aktuellen Browser, aber auch Node, Deno oder Bun unterstützen die
Ausführung von WebAssembly. Mit Hilfe von wasm-bindgen kann WASM-Code mit
JavaScript kommunizieren und zusammenarbeiten.
Neuerdings gibt es, dank des WASI-Standards aber auch eigenständige
Ausführungsumgebungen für WebAssembly, um Code plattformunabhängig auszuführen –
die bekannteste derzeit: Wasmer inklusive Packet-Registry.
Die Zukunft von WebAssembly sieht Martina in der Nutzung als „Serverless
Functions“, also in Form von schnell erzeugtem „Fire and Forget“-Code, der
irgendwo in der Cloud läuft.
KEINE SCHAUNOTIZEN
DAS V8 BLOG
Hier posten die V8-Ingenieure regelmäßig über die Verbesserungen an der Engine.
DEBUG C/C++ WEBASSEMBLY
Hier findet Ihr beschrieben, wie Ihr mit den Chrome Devtools WebAssembly-Code
debuggen könnt. Ein Video-Tutorial gibt es auch.