WebAssembly (Wasm)

WebAssembly -abreviado habitualmente como Wasm- es una tecnología open source que define el estándar de un binario portable ejecutable en un navegador web.

Es uno de los 4 lenguajes que se ejecutan en un navegador de manera nativa junto a HTML, Javascript y CSS. Su primera versión fue lanzada en 2015, a 5 de diciembre de 2019 ha sido ya recomendado por el W3C.

Wasm se puede ejecutar en las últimas versiones de los navegadores principales del mercado, para versiones antiguas de estos puede compilarse a Javascript vía Polyfill en un fichero asm.js.

Los ejecutables de wasm están precompilados por lo que es posible desarrollar programas para esta tecnología desde gran variedad de lenguajes, a día de hoy son ya más de 40, la mayor parte de la comunidad utiliza lenguajes como C o C++ para desarrollar utilizando esta tecnología.

WebAssembly se ejecuta en una máquina virtual dentro del navegador de manera nativa, es más rápido que Javascript.

Debido a su potencia y su ofuscación de código al ser compilado ha sido utilizado para malware, sobre todo para minar criptomonedas. Es uno de sus aspectos más criticados a día de hoy.

También se ha generado polémica por su arquitectura multi-hilo ya que bajo determinadas circunstancias era posible eludir las limitaciones del sandbox de ejecución.

Por ahora no tiene un uso muy extendido, pero le iré siguiendo la pista. Quizás el C que aprendí en la universidad me sirva por fin para algo :).

Espero que os sea de utilidad ^_^.


Comentarios