Je commence à entendre des rumeurs au sujet de ce projet appelé asm.js . Actuellement, leur site Web est horrible et déroutant. Voici ce que je sais de mes recherches sur le web.
- Il s'agit d'un sous-ensemble de JavaScript qui peut être hautement optimisé. Je suppose, car cela évite les parties les plus dynamiques de la langue.
- Les performances du code compilé en ASM.js s'exécutent à environ la moitié de la vitesse de C (pas léger).
- L'intention est que les compilateurs fassent de leur langue cible ASM.js.
- Firefox va être livré avec l'optimisation ASM.js intégrée.
- Les équipes Mozilla et Unreal ont porté le moteur Unreal sur le Web avec lui et son fonctionnement dans une version de Firefox à des vitesses quasi natives.
Il ne semble pas y avoir aucune information concrète sur le web au sujet de ce que ce vraiment est ou l'utilité ou le but ultime. Est-ce que je peux compiler mes bases de code autrement côté serveur et le faire exécuter dans le navigateur à des vitesses proches de celles natives? Quelles sont les ramifications pour les développeurs?
la source
Imaginez ASM.js comme un grand ArrayBuffer binaire appelé un tas et un ensemble de modules JavaScript, qui commencent par une directive prologue:
"use asm";
et effectuent des opérations rapides de bas niveau sur des données binaires brutes, similaires aux langages d'assemblage. Ces modules pourraient être écrits à la main ou mieux compilés à partir du code LLVM par des scripts comme Emscripten. Leurs performances pourraient être améliorées grâce au moteur Mozilla OdinMonkey, mais elles sont rétrocompatibles avec la plupart des interpréteurs ECMAScript modernes.ASM.js n'est pas limité aux jeux, vous pouvez même exécuter des applications Qt entières dans votre navigateur, comme celles-ci !
la source