Rilis mesin JavaScript tertanam Duktape 2.4.0

diterbitkan Rilis mesin JavaScript Duktape 2.4.0, bertujuan untuk menyematkan ke dalam basis kode proyek dalam bahasa C/C++. Mesinnya berukuran kompak, sangat portabel, dan konsumsi sumber daya yang rendah. Kode sumber mesin ditulis dalam C dan sebaran di bawah lisensi MIT.

Kode Duktape memakan waktu sekitar 160 kB dan hanya menggunakan 70 kB RAM, dan dalam mode konsumsi memori rendah 27 kB RAM. Untuk mengintegrasikan Duktape ke dalam kode C/C++ cukup tambahkan file duktape.c dan duktape.h ke proyek, dan gunakan API Duktape untuk memanggil fungsi JavaScript dari kode C/C++ atau sebaliknya. Untuk mengosongkan objek yang tidak terpakai dari memori, digunakan pengumpul sampah dengan finalizer, yang dibuat berdasarkan kombinasi algoritma penghitungan tautan dengan algoritma penandaan (Mark and Sweep). Mesin ini digunakan untuk memproses JavaScript di browser NetSurf.

Menyediakan kompatibilitas penuh dengan spesifikasi Ecmascript 5.1 dan sebagian mendukung Ecmascript 2015 dan 2016 (E6 dan E7), termasuk dukungan objek Proxy untuk virtualisasi properti, Typed Arrays, ArrayBuffer, Node.js Buffer, Encoding API, Symbol object, dll. Ini mencakup debugger bawaan, mesin ekspresi reguler, dan subsistem untuk dukungan Unicode. Ekstensi khusus juga disediakan, seperti dukungan coroutine, kerangka logging bawaan, mekanisme pemuatan modul berbasis CommonJS, dan sistem cache bytecode yang memungkinkan Anda menyimpan dan memuat fungsi yang dikompilasi.

Dalam rilis baru dilaksanakan panggilan baru ke duk_to_stacktrace() dan duk_safe_to_stacktrace() untuk mendapatkan pelacakan tumpukan, duk_push_bare_array() untuk menambahkan instance array independen. Fungsi duk_require_constructable() dan duk_require_constructor_call() telah dipublikasikan. Peningkatan kompatibilitas dengan spesifikasi ES2017. Bekerja dengan array dan objek telah dioptimalkan. Menambahkan opsi β€œ--no-auto-complete” ke antarmuka duk CLI untuk menonaktifkan penyelesaian input.

Sumber: opennet.ru

Tambah komentar