Nova - Mesin JavaScript & WebAssembly yang Ditulis dengan Rust
(github.com/trynova)- Nova adalah mesin JavaScript dengan ciri desain berorientasi data, yang mengadopsi struktur yang dirancang untuk memaksimalkan performa dan efisiensi cache
- Secara bersamaan menargetkan pencegahan kerentanan memori dan optimasi performa
- Fitur utama:
- Semua data yang dialokasikan di heap JavaScript disimpan dalam vektor berdasarkan jenisnya (angka di vektor angka, string di vektor string, dan seterusnya).
- Referensi heap diproses sebagai indeks yang dibedakan menurut jenisnya, yang memberikan keamanan memori dan efisiensi ukuran.
- Objek dibagi menurut jenisnya lalu disimpan dalam vektor (objek umum, array, DataView, dll.).
- Objek non-umum dirancang untuk merujuk ke data objek umum hanya saat diperlukan.
- Objek disimpan secara agresif dalam bentuk terpisah untuk menghindari pembacaan data yang tidak digunakan.
- Masih dalam pengembangan. Mesin ini memiliki fitur yang sangat terbatas sehingga baru lulus sekitar 47% dari rangkaian pengujian test262
1 komentar
Komentar Hacker News
function X(a) { this.a = a; }danfunction Y(b) { this.b = b; }dianggap sebagai jenis objek yang berbeda{a: 1}dan{b: 2}dianggap sebagai jenis objek yang berbeda