Technieuws

Assembly voor het www in aantocht

Reading time: 2 minutes

De webbrowsergrootmachten slaan de handen ineen om een ‘assembly voor het www’ te ontwikkelen. Webassembly moet een intermediaire representatie vormen van Javascript-code, die veel dichter tegen (virtuele-)machinecode aanzit en bijvoorbeeld vastgestelde datatypes gebruikt. Uit initiële testen lijkt een versnelling met een factor twintig in het parsen van de code mogelijk. De binaire beschrijving is bovendien een stuk compacter dan de tekstbeschrijving. Daarnaast moet het ook mogelijk worden om C/C++ en andere programmeertalen naar Webassembly te compileren.

Het project kan gezien worden als een vervolg op asm.js, een project van Mozilla om een gelimiteerde subscript van Javascript te ontwikkelen. Omdat de webbrowser met een aantal situaties geen rekening hoeft te houden, kan die deze code veel sneller uitvoeren. Onderdeel van het project is ook een compiler die C/C++-code kan compileren naar asm.js.

De aanpak levert echter nog steeds Javascript op, zodat het ook uitgevoerd kan worden door browsers die het dialect niet ondersteunen. Daardoor blijven verschillende bottlenecks bestaan. Google kwam daarom met een andere aanpak op de proppen: portable native client, waarbij programmacode naar het intermediaire formaat van de LLVM-compiler wordt omgezet. De webbrowser zet dit vervolgens om naar machinecode en voert deze in een sandbox uit. Dit levert zeer efficiënte programmatuur op, maar deze aanpak integreert weer niet goed met de webpagina. Andere webbrowsermakers zagen daarom weinig heil in de aanpak.

This article is exclusively available to premium members of Bits&Chips. Already a premium member? Please log in. Not yet a premium member? Become one for just €20 for the first year and enjoy all the benefits.

Login

Related content