WebAssembly (oft mit Wasm abgekürzt) ist eine neue Web Technologie, die im Browser - ohne proprietärer Erweiterung - als Stack-basierte virtuelle Maschine in einer sicheren Sandbox läuft.


WebAssembly Code kann direkt ausgeführt werden und bietet dadurch eine viel performantere Ausführung als vergleichsweise mit JavaScript erzielt werden kann. Um eine effiziente Entwicklung von Applikationen auf Basis von WebAssembly zu ermöglichen, benötigt man ausgereifte Übersetzer für gängige Hochsprachen wie C, C#, Java um nur einige zu nennen. Im Bereich der App Entwicklung ist QML ein prominenter Vertreter, der sich durch eine sehr hohe Effizienz durch Verwendung von modernen Sprachmitteln, wie deklarativer Beschreibung von Benutzerschnittstellen und automatischen Updates für Variablen auszeichnet.

Ziele und Ergebnisse
Um nun eine noch effizientere Ausführung von QML im Browser zu ermöglichen, ist ein Übersetzer notwendig, der effizienten WebAsesembly Code erzeugt. Des Weiteren muss dieser leichtgewichtig als Web Anwendung deployed und genutzt werden können. Dabei sollen aber bereits vorhandene Techniken für QML weiter nutzbar bleiben, wie beispielsweise partielle Code Updates, um Hot Code Reloading zu ermöglichen.

Dauer
12/2019 – 04/2021

Partner Felgo

Contact Manuel Wimmer

QML2Wasm: Efficient QML Compilation and Deployment to Web Assembly