Les ingénieurs derrière Firefox, Chromium, Edge et WebKit ont créé un nouveau format de fichier binaire standard destiné aux applications web. Brendan Eich, l’inventeur du JavaScript qui s’était fait très discret depuis sa démission du poste de CEO de Mozilla, reprend à cette occasion la parole sur son blog.
WebAssembly, dont le suffixe est .wasm
, est un nouveau binaire pour du code de bas niveau, explique-t-il. Il s’agit d’un bytecode, un code intermédiaire entre les instructions machines et le code source.
Alors que les navigateurs font tourner des sites web de plus en plus complexes, au point qu’il s’agit parfois d’applications aussi sophistiquées que des logiciels natifs, les performances sont devenues cruciales. Un binaire WebAssembly pourra être décodé beaucoup plus rapidement par le navigateur qu’il ne traitera du JavaScript (jusqu’à 20 fois plus rapide selon les premières expérimentations).
De nombreux types d’applications web pourront profiter de WebAssembly : jeux, éditeurs d’images, lecteurs musicaux, services scientifiques, sites interactifs en tous genres…
Les promoteurs du projet assurent que WebAssembly n’est pas destiné à remplacer le JavaScript, très utilisé dans les web apps. « Bien que WebAssembly va permettre, au fil du temps, de compiler beaucoup de langages pour le web (il est déjà question du C/C++, ndr), JavaScript est extrêmement dynamique et va rester le langage privilégié pour le web », peut-on lire dans la FAQ.
« Avec la coévolution du JavaScript et de wasm, je crois que tous les meilleurs navigateurs seront équipés de moteurs JavaScript qui seront devenus de vraies machines virtuelles polyglottes », déclare Brendan Eich.
À l’heure actuelle, WebAssembly n’en est qu’à ses prémices. Un groupe de travail a été mis en place au W3C et les grandes lignes du projet ont été tracées, mais il reste encore à le formaliser.