Estoy empezando a escuchar rumores acerca de este proyecto llamado ASM.js . Actualmente su sitio web es terrible y confuso. Esto es lo que sé de mi investigación en la web.
- Es un subconjunto de JavaScript que puede ser altamente optimizado. Supongo que porque evita las partes más dinámicas del lenguaje.
- El rendimiento del código compilado en ASM.js se ejecuta a aproximadamente la mitad de la velocidad de C (no es ligero).
- La intención es que los compiladores hagan su lenguaje de destino ASM.js.
- Firefox se enviará con la optimización ASM.js incorporada.
- Los equipos de Mozilla y Unreal portaron el Unreal Engine a la web con él y se ejecuta en una versión de Firefox a velocidades casi nativas.
No parece haber ninguna información concreta en la web sobre lo que realmente es o la utilidad o el propósito final. ¿Es que puedo compilar mis bases de código del lado del servidor y hacer que se ejecute en el navegador a velocidades cercanas a las nativas? ¿Cuáles son las ramificaciones para los desarrolladores?
fuente
Imagine ASM.js como un gran ArrayBuffer binario llamado montón y un conjunto de módulos JavaScript, que comienzan con una directiva de prólogo:
"use asm";
y realizan operaciones rápidas de bajo nivel en datos binarios sin formato, similares a los lenguajes ensambladores. Esos módulos podrían escribirse a mano o compilarse mejor a partir del código LLVM mediante scripts como Emscripten. Su rendimiento podría incrementarse gracias al motor Mozilla OdinMonkey, pero son compatibles con la mayoría de los intérpretes modernos de ECMAScript.ASM.js no se limita a juegos, ¡incluso puede ejecutar aplicaciones Qt completas en su navegador, como estas !
fuente