Rhyddhau'r injan JavaScript mewnosodedig Duktape 2.4.0

Cyhoeddwyd Rhyddhau injan JavaScript Duktape 2.4.0, gyda'r nod o wreiddio yn sylfaen cod prosiectau yn yr iaith C/C++. Mae'r injan yn gryno o ran maint, yn gludadwy iawn ac yn defnyddio llawer o adnoddau. Mae cod ffynhonnell yr injan wedi'i ysgrifennu yn C a lledaenu dan drwydded MIT.

Mae'r cod Duktape yn cymryd tua 160 kB ac yn defnyddio dim ond 70 kB o RAM, ac yn y modd defnydd cof isel 27 kB o RAM. Integreiddio Duktape i god C/C++ digon ychwanegu ffeiliau duktape.c a duktape.h at y prosiect, a defnyddio API Duktape i alw swyddogaethau JavaScript o god C/C++ neu i'r gwrthwyneb. Er mwyn rhyddhau gwrthrychau nas defnyddiwyd o'r cof, defnyddir casglwr sbwriel gyda therfynwr, wedi'i adeiladu ar sail cyfuniad algorithm cysylltu cyfrif ag algorithm marcio (Mark and Sweep). Defnyddir yr injan i brosesu JavaScript yn y porwr NetSurf.

Yn darparu cydnawsedd llawn Γ’ manylebau Ecmascript 5.1 a rhannol cefnogaeth Ecmascript 2015 a 2016 (E6 ac E7), gan gynnwys cefnogaeth gwrthrych dirprwyol ar gyfer rhithwiroli eiddo, Araeau Teipiedig, ArrayBuffer, Clustog Node.js, API Amgodio, gwrthrych Symbol, ac ati. Mae'n cynnwys dadfygiwr adeiledig, peiriant mynegiant rheolaidd, ac is-system ar gyfer cefnogaeth Unicode. Darperir estyniadau penodol hefyd, megis cefnogaeth coroutine, fframwaith logio adeiledig, mecanwaith llwytho modiwl sy'n seiliedig ar CommonJS, a system caching bytecode sy'n eich galluogi i arbed a llwytho swyddogaethau a luniwyd.

Yn y datganiad newydd gweithredu galwadau newydd i duk_to_stacktrace() a duk_safe_to_stacktrace() i gael olion stac, duk_push_bare_array() i ychwanegu achosion arae annibynnol. Mae'r swyddogaethau duk_require_constructable() a duk_require_constructor_call() wedi'u gwneud yn gyhoeddus. Gwell cydnawsedd Γ’ manyleb ES2017. Mae gwaith gydag araeau a gwrthrychau wedi'i optimeiddio. Ychwanegwyd opsiwn β€œ--no-auto-complete” at y rhyngwyneb CLI duk i analluogi cwblhau mewnbwn.

Ffynhonnell: opennet.ru

Ychwanegu sylw