Manustatud JavaScripti mootori Duktape 2.4.0 väljalase

avaldatud JavaScripti mootori väljalase Duktape 2.4.0, mille eesmärk on manustada projektide koodibaasi C/C++ keeles. Mootor on kompaktse suurusega, hästi kaasaskantav ja madala ressursikuluga. Mootori lähtekood on kirjutatud C ja levima MIT litsentsi alusel.

Duktape'i kood võtab enda alla umbes 160 kB ja kulutab vaid 70 kB RAM-i ning vähese mälutarbimisega režiimis 27 kB RAM-i. Duktape'i integreerimiseks C/C++ koodi piisavalt lisage projekti failid duktape.c ja duktape.h ning kasutage Duktape API JavaScripti funktsioonide kutsumiseks C/C++ koodist või vastupidi. Kasutamata objektide mälust vabastamiseks kasutatakse kombinatsiooni alusel ehitatud prügikogujat koos lõppseadmega. algoritm linkide loendamine koos märgistamisalgoritmiga (Mark and Sweep). Mootorit kasutatakse JavaScripti töötlemiseks brauseris NetSurf.

Pakub täielikku ühilduvust Ecmascript 5.1 spetsifikatsioonidega ja osaliselt toetama Ecmascript 2015 ja 2016 (E6 ja E7), sealhulgas puhverserveri objektide tugi atribuutide virtualiseerimiseks, trükitud massiivid, ArrayBuffer, Node.js puhver, kodeeringu API, sümbolobjekt jne. See sisaldab sisseehitatud silurit, regulaaravaldise mootorit ja Unicode'i toe alamsüsteemi. Pakutakse ka spetsiifilisi laiendusi, nagu korutiini tugi, sisseehitatud logimisraamistik, CommonJS-põhine mooduli laadimismehhanism ja baitkoodi vahemällu salvestamise süsteem, mis võimaldab salvestada ja laadida kompileeritud funktsioone.

Uues väljaandes rakendatud uued väljakutsed duk_to_stacktrace() ja duk_safe_to_stacktrace() virnajälgede hankimiseks, duk_push_bare_array() sõltumatute massiivi eksemplaride lisamiseks. Funktsioonid duk_require_constructable() ja duk_require_constructor_call() on avalikustatud. Täiustatud ühilduvus ES2017 spetsifikatsiooniga. Töö massiivide ja objektidega on optimeeritud. Sisestuse lõpetamise keelamiseks lisati duk CLI liidesele suvand "--no-auto-complete".

Allikas: opennet.ru

Lisa kommentaar