Boa parte da web atual depende da linguagem de programação JavaScript. Nos últimos anos, navegadores como Chrome e Firefox se tornaram mais rápidos em processar JavaScript, mas chegaram a um limite. E agora? É hora de outra solução.
Segundo o Ars Technica, engenheiros do Google, Apple, Microsoft e Mozilla se juntaram para criar o WebAssembly (ou wasm), que promete desempenho 20 vezes mais rápido para os navegadores do futuro.
Normalmente, linguagens de programação são feitas para que humanos consigam compreendê-la. No entanto, isso é um problema para os navegadores, que precisam ler e interpretar um código que não foi projetado para máquinas.
Por isso, o novo padrão WebAssembly é um bytecode: ou seja, um conjunto de instruções em formato binário, pensado para ser lido facilmente pelo navegador. Ele consiste em uma série de zeros e uns; também haverá um modo texto, mas apenas para que desenvolvedores possam caçar e eliminar bugs.
Com isso, é possível rodar conteúdo na web com quase a mesma velocidade de um programa nativo. No protótipo atual, o navegador processa o WebAssembly 23 vezes mais rápido que um código JavaScript tradicional.
Isso não significa a morte do onipresente JavaScript: na verdade, os criadores do WebAssembly sabem que será necessária uma transição, e avisam que o código poderá ser convertido para que funcione em qualquer navegador.
Diferença de velocidade entre JavaScript e asm.js
A Mozilla e o Google tentam, há anos, injetar mais velocidade à web. O asm.js permite rodar código de aplicativos (como a linguagem C) no navegador a velocidades maiores que o JavaScript. Enquanto isso, o NaCl permite rodar código nativo no Chrome. Agora, as equipes desses dois projetos estão trabalhando juntas no WebAssembly, que pode se tornar um padrão para todos os navegadores.
Não seria a primeira vez que uma ideia restrita a um navegador se espalhou para todos. Este ano, o HTTP ganhou uma nova versão para fazer as páginas carregarem mais rápido; o HTTP2 é baseado em um protocolo criado pelo Google em 2009.
Vale lembrar que o WebAssembly ainda está dando os primeiros passos: os detalhes desse novo padrão ainda serão decididos, então vai demorar um pouco até que ele chegue aos navegadores. No entanto, gigantes como Google e Microsoft estão apoiando o projeto desde o início – por isso ele parece bem promissor. [Ars Technica via The Next Web; TechCrunch]
Foto por Dmitry Baranovskiy/Flickr