A beágyazott JavaScript motor Duktape 2.4.0 kiadása

közzétett JavaScript motor kiadása Duktape 2.4.0, amelynek célja a projektek kódbázisába való beágyazása C/C++ nyelven. A motor kompakt méretű, rendkívül hordozható és alacsony erőforrás-fogyasztású. A motor forráskódja C és nyelven van írva terjedés az MIT engedélye alapján.

A Duktape kód körülbelül 160 kB-ot foglal el, és csak 70 kB RAM-ot fogyaszt, alacsony memóriafogyasztású módban pedig 27 kB RAM-ot. Duktape integrálása C/C++ kódba elegendő adjon hozzá duktape.c és duktape.h fájlokat a projekthez, és használja Duktape API JavaScript függvények meghívásához C/C++ kódból vagy fordítva. A nem használt objektumok memóriából való felszabadításához egy kombináció alapján felépített, véglegesítővel ellátott szemétgyűjtőt használnak. algoritmus linkszámlálás jelölőalgoritmussal (Mark and Sweep). A motor a JavaScript feldolgozására szolgál a böngészőben NetSurf.

Teljes kompatibilitást biztosít az Ecmascript 5.1 specifikációival és részlegesen támogatás Ecmascript 2015 és 2016 (E6 és E7), beleértve a proxyobjektumok támogatását a tulajdonságok virtualizálásához, a beírt tömböket, az ArrayBuffert, a Node.js puffert, a kódolási API-t, a szimbólumobjektumot stb. Tartalmaz egy beépített hibakeresőt, egy reguláris kifejezés motort és egy alrendszert a Unicode támogatáshoz. Különleges bővítmények is rendelkezésre állnak, mint például a korutintámogatás, a beépített naplózási keretrendszer, a CommonJS-alapú modulbetöltő mechanizmus és a bájtkód gyorsítótárazási rendszer, amely lehetővé teszi a lefordított függvények mentését és betöltését.

Az új kiadásban megvalósítani a duk_to_stacktrace() és a duk_safe_to_stacktrace() új hívásai veremnyomok lekéréséhez, a duk_push_bare_array() pedig független tömbpéldányok hozzáadásához. A duk_require_constructable() és a duk_require_constructor_call() függvények nyilvánosságra kerültek. Továbbfejlesztett kompatibilitás az ES2017 specifikációval. A tömbökkel és objektumokkal végzett munka optimalizálva lett. A „--no-auto-complete” opció hozzáadva a duk CLI felületéhez a bevitel befejezésének letiltásához.

Forrás: opennet.ru

Hozzászólás