WebAssembly Binary
WebAssembly (Wasm) é um formato de instrução binária para uma máquina virtual baseada em pilha. Ele permite desempenho quase nativo em navegadores web para aplicações como jogos, edição de vídeo, CAD e simulações científicas. Código em C, C++, Rust e Go compila para Wasm para execução portátil.
Tipo MIME
application/wasm
Tipo
Binário
Compressão
Sem perdas
Vantagens
- + Near-native execution speed in web browsers
- + Compile from C, C++, Rust, Go, and more
- + Sandboxed execution for security
- + Portable — runs in browsers and server-side via WASI
Desvantagens
- − No direct DOM access — requires JavaScript interop
- − Debugging is harder than JavaScript
- − Binary format is not human-readable
Quando usar .WASM
Use Wasm para aplicações web intensivas em CPU, portar código nativo para navegadores e funções serverless de edge via WASI.
Detalhes técnicos
O Wasm usa um formato binário compacto com funções tipadas, memória linear e uma etapa de validação que garante segurança. Ele roda em um ambiente sandbox sem acesso direto ao DOM — pontes JavaScript fornecem I/O. O WASI estende o Wasm para uso server-side.
Histórico
O W3C lançou o WebAssembly 1.0 em 2017, desenvolvido pela Mozilla, Google, Microsoft e Apple. Foi projetado como um alvo de compilação para a web, complementando o JavaScript com desempenho determinístico e previsível.