Izdanje ugrađenog JavaScript motora Duktape 2.4.0

Objavljeno Izdanje JavaScript motora Duktape 2.4.0, s ciljem ugradnje u kodnu bazu projekata u jeziku C/C++. Motor je kompaktne veličine, vrlo prenosiv i malo troši resurse. Izvorni kod motora napisan je u C i širenje pod licencom MIT-a.

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

Pruža punu kompatibilnost sa specifikacijama Ecmascript 5.1 i djelomičnu podržati Ecmascript 2015 i 2016 (E6 i E7), uključujući podršku za proxy objekte za virtualizaciju svojstava, Typed Arrays, ArrayBuffer, Node.js Buffer, Encoding API, Symbol object, itd. Uključuje ugrađeni program za ispravljanje pogrešaka, mehanizam regularnih izraza i podsustav za Unicode podršku. Dostupna su i posebna proširenja, kao što je podrška za korutinu, ugrađeni okvir za bilježenje, mehanizam za učitavanje modula temeljen na CommonJS-u i sustav predmemoriranja bajt-koda koji vam omogućuje spremanje i učitavanje kompiliranih funkcija.

U novom izdanju implementiran novi pozivi duk_to_stacktrace() i duk_safe_to_stacktrace() za dobivanje tragova stogova, duk_push_bare_array() za dodavanje neovisnih instanci niza. Funkcije duk_require_constructable() i duk_require_constructor_call() su javno objavljene. Poboljšana kompatibilnost sa specifikacijom ES2017. Optimiziran je rad s nizovima i objektima. Dodana je opcija “--no-auto-complete” na duk CLI sučelje da se onemogući dovršavanje unosa.

Izvor: opennet.ru

Dodajte komentar