Lage motè JavaScript entegre Duktape 2.4.0

pibliye Lage motè JavaScript Duktape 2.4.0, ki vize pou entegre nan baz kòd pwojè nan lang C/C++. Motè a se kontra enfòmèl ant nan gwosè, trè pòtab ak konsomasyon resous ki ba. Kòd sous motè a ekri nan C ak gaye anba lisans MIT.

Kòd Duktape a pran apeprè 160 kB ak konsome sèlman 70 kB RAM, ak nan mòd konsomasyon memwa ki ba 27 kB RAM. Pou entegre Duktape nan kòd C/C++ ase ajoute fichye duktape.c ak duktape.h nan pwojè a, epi sèvi ak Duktape API pou rele fonksyon JavaScript soti nan kòd C/C++ oswa vis vèrsa. Pou libere objè ki pa itilize nan memwa, yo itilize yon pèseptè fatra ak yon finalizè, ki bati sou baz yon konbinezon. algorithm konte lyen ak algorithm make (Mark ak bale). Yo itilize motè a pou trete JavaScript nan navigatè a NetSurf.

Bay konpatibilite konplè ak espesifikasyon Ecmascript 5.1 ak yon pati nan sipòte Ecmascript 2015 ak 2016 (E6 ak E7), ki gen ladan sipò objè Proxy pou Virtualization pwopriyete, Tape Tape, ArrayBuffer, Node.js Tanpon, API kodaj, objè senbòl, elatriye. Li gen ladann yon debogaj entegre, yon motè ekspresyon regilye, ak yon subsistèm pou sipò Unicode. Yo bay ekstansyon espesifik tou, tankou sipò koroutine, yon fondasyon anrejistreman entegre, yon mekanis chaje modil CommonJS ki baze sou, ak yon sistèm kachèt bytecode ki pèmèt ou sove ak chaje fonksyon konpile.

Nan nouvo lage a aplike nouvo apèl pou duk_to_stacktrace() ak duk_safe_to_stacktrace() pou jwenn tras pil, duk_push_bare_array() pou ajoute egzanp etalaj endepandan. Fonksyon duk_require_constructable() ak duk_require_constructor_call() yo te fè piblik. Amelyore konpatibilite ak spesifikasyon ES2017 la. Travay ak etalaj ak objè yo te optimize. Te ajoute opsyon "--no-auto-complete" nan koòdone duk CLI a pou enfim fini antre.

Sous: opennet.ru

Add nouvo kòmantè