- Spesifikasi Wasm 2.0 telah diumumkan secara resmi
- Wasm Community dan Working Groups telah menyelesaikan spesifikasi ini sejak 2022, dan implementasi utama sebenarnya sudah mendukung 2.0
- Mulai 2.0, diperkenalkan model evergreen, sehingga dokumen Candidate Recommendation akan terus diperbarui agar tetap dalam kondisi terbaru
- Setiap kali versi baru diumumkan, dokumen tidak dipindahkan menjadi rekomendasi final; sebaliknya, draf rekomendasi saat ini dianggap sebagai standar
Fitur utama dan tambahan di Wasm 2.0
- Instruksi vektor (SIMD): penambahan 236 instruksi baru memungkinkan pemanfaatan kemampuan SIMD 128-bit pada CPU modern, sehingga efisien untuk codec audio/video berperforma tinggi, machine learning, kriptografi, dan lainnya
- Instruksi bulk memory: ditambahkan satu set instruksi yang memungkinkan penyalinan dan inisialisasi memori serta tabel dengan cepat
- Pengembalian multi-value: fungsi dan blok kini dapat mengembalikan beberapa nilai, sehingga calling convention menjadi lebih baik dan transformasi program tambahan dimungkinkan
- Reference types: mendukung referensi ke fungsi atau pointer ke objek eksternal (misalnya nilai JavaScript) sebagai nilai kelas satu yang opak; tabel dapat digunakan sebagai penyimpanan untuk nilai referensi ini, serta dimungkinkan instruksi untuk menangani tabel dan definisi banyak tabel
- Konversi non-trapping: diperkenalkan instruksi konversi yang tidak menimbulkan trap tak terduga saat mengonversi dari floating-point ke integer
- Instruksi sign-extension: ditambahkan instruksi untuk memperluas lebar integer bertanda secara langsung, sehingga perluasan kini dapat dilakukan tanpa akses memori seperti sebelumnya
Kompatibilitas mundur dan prospek ke depan
- Wasm 2.0 sepenuhnya kompatibel dengan 1.0, sehingga program yang sudah ada tetap berjalan apa adanya
- Rilis Wasm 3.0 juga dijadwalkan hadir dalam waktu dekat
2 komentar
WA!(SM)
Opini Hacker News