WebAssembly Binary
WebAssembly (Wasm) adalah format instruksi biner untuk mesin virtual berbasis tumpukan. Format ini memungkinkan performa mendekati native di browser web untuk aplikasi seperti game, pengeditan video, CAD, dan simulasi ilmiah. Kode dari C, C++, Rust, dan Go dikompilasi ke Wasm untuk eksekusi portabel.
Tipe MIME
application/wasm
Tipe
Biner
Kompresi
Lossless
Kelebihan
- + 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
Kekurangan
- − No direct DOM access — requires JavaScript interop
- − Debugging is harder than JavaScript
- − Binary format is not human-readable
Kapan Menggunakan .WASM
Gunakan Wasm untuk aplikasi web yang intensif CPU, memindahkan kode native ke browser, dan fungsi edge serverless melalui WASI.
Detail Teknis
Wasm menggunakan format biner ringkas dengan fungsi bertipe, memori linier, dan langkah validasi yang memastikan keamanan. Format ini berjalan di lingkungan sandbox tanpa akses langsung ke DOM — jembatan JavaScript menyediakan I/O. WASI memperluas Wasm untuk penggunaan sisi server.
Riwayat
W3C merilis WebAssembly 1.0 pada tahun 2017, dikembangkan oleh Mozilla, Google, Microsoft, dan Apple. Format ini dirancang sebagai target kompilasi untuk web, melengkapi JavaScript dengan performa yang deterministik dan dapat diprediksi.