O documento discute o WebAssembly, uma nova tecnologia que permite executar código de baixo nível nos navegadores. O WebAssembly oferece um formato binário compacto e desempenho quase nativo, permitindo compilar linguagens como C/C++ para serem executadas na web. Foi projetado também para trabalhar junto com JavaScript.
5. O WebAssembly é um novo tipo de código que
pode ser executado em browsers modernos — se
trata de uma linguagem de baixo nível como
assembly, com um formato binário compacto que
executa com performance quase nativa e que
fornece um novo alvo de compilação para
linguagens como C/C++, para que possam ser
executadas na web. Também foi projetado para
executar em conjunto com o JavaScript, permitindo
que ambos trabalhem juntos.
https://developer.mozilla.org/pt-BR/docs/WebAssembly
6. O WebAssembly é um novo tipo de código que
pode ser executado em browsers modernos — se
trata de uma linguagem de baixo nível como
assembly, com um formato binário compacto que
executa com performance quase nativa e que
fornece um novo alvo de compilação para
linguagens como C/C++, para que possam ser
executadas na web. Também foi projetado para
executar em conjunto com o JavaScript, permitindo
que ambos trabalhem juntos.
https://developer.mozilla.org/pt-BR/docs/WebAssembly
15. const asmModule = (() => {
'use asm';
function acrescentarUnidade(valor) {
valor = valor |0;
return valor + 1 |0;
}
return acrescentarUnidade;
})();
js com superpoderes
de baixo nível
16. // heap de memória com 10 slots para guardar valores de 8 bits
const HEAP8 = new Int8Array(10);
// alocando um valor em um endereço de memória
HEAP8[0] = 1;
// liberando um endereço de memória
HEAP8[0] = 0;
gerenciamento de
memória
17. ● Compile Target para C/C++
● Não precisa recompilar para
diferentes plataformas
● Executa em Sandbox
● Não é um plugin
● Funciona mal em browsers sem
suporte
● Performance quase nativa
deu
18. deu ● Sem multithread com memória
compartilhada
● Boilerplate enorme
● Não tem SIMD
● Herda limitações do JavaScript
71. Centro
Rua São José, 90
Sala 2121
(21) 2240-2030
Cidade Monções
Av. Nações Unidas,
11.541 - 3º andar
(11) 4119-0449
Savassi
Av. Getúlio Vargas, 671
Sala 800 - 8º andar
(31) 3360-8900
www.concrete.com.b
r