Izdanje ugrađenog JavaScript motora Duktape 2.4.0

objavljeno Izdanje JavaScript motora Duktape 2.4.0, koji ima za cilj ugrađivanje u bazu koda projekata na jeziku C/C++. Motor je kompaktne veličine, vrlo prenosiv i niske potrošnje resursa. Izvorni kod motora je napisan u C i širenje pod MIT licencom.

Duktape kod zauzima oko 160 kB i troši samo 70 kB RAM-a, au režimu niske potrošnje memorije 27 kB RAM-a. Integrirati Duktape u C/C++ kod dovoljno dodajte datoteke duktape.c i duktape.h u projekat i koristite Duktape API za pozivanje JavaScript funkcija iz C/C++ koda ili obrnuto. Za oslobađanje neiskorištenih objekata iz memorije koristi se sakupljač smeća s finalizatorom, izgrađen na temelju kombinacije algoritam brojanje linkova sa algoritmom označavanja (Mark and Sweep). Motor se koristi za obradu JavaScripta u pretraživaču NetSurf.

Pruža potpunu kompatibilnost sa specifikacijama Ecmascript 5.1 i djelomičnu podrška Ecmascript 2015 i 2016 (E6 i E7), uključujući podršku za proxy objekte za virtualizaciju svojstava, tipizirane nizove, ArrayBuffer, Node.js međuspremnik, API za kodiranje, Simbol objekt, itd. Uključuje ugrađeni program za otklanjanje grešaka, mehanizam regularnih izraza i podsistem za podršku za Unicode. Specifične ekstenzije su takođe obezbeđene, kao što je podrška za korutine, ugrađeni okvir za evidentiranje, mehanizam za učitavanje modula zasnovan na CommonJS-u i sistem za keširanje bajtkoda koji vam omogućava da sačuvate i učitate kompajlirane funkcije.

U novom izdanju implementirano novi pozivi duk_to_stacktrace() i duk_safe_to_stacktrace() za dobijanje tragova steka, duk_push_bare_array() za dodavanje nezavisnih instanci niza. Funkcije duk_require_constructable() i duk_require_constructor_call() su objavljene. Poboljšana kompatibilnost sa specifikacijom ES2017. Rad sa nizovima i objektima je optimizovan. Dodata opcija “--no-auto-complete” u duk CLI sučelje kako bi se onemogućio završetak unosa.

izvor: opennet.ru

Dodajte komentar