Rakirina motora JavaScript-ê ya pêvekirî Duktape 2.4.0

weşandin Serbestberdana motora JavaScript Duktape 2.4.0, armanc ew e ku di bingeha kodê ya projeyên bi zimanê C/C++ de bicîh bikin. Motor bi mezinahî, pir portable û xerckirina çavkaniyê kêm e. Koda çavkaniyê ya motorê bi C û tê nivîsandin belavbûn di bin lîsansa MIT.

Koda Duktape bi qasî 160 kB digire û tenê 70 kB RAM, û di moda vexwarina bîra kêm de 27 kB RAM vedixwe. Ji bo entegrekirina Duktape di koda C/C++ de bes e pelên duktape.c û duktape.h li projeyê zêde bikin û bikar bînin Duktape API ji bo bangkirina fonksiyonên JavaScriptê ji koda C/C++ an berevajî. Ji bo ku tiştên ku nayên bikar anîn ji bîrê azad bikin, berhevkarek çopê ya bi dawîker tê bikar anîn, ku li ser bingeha hevgirtinê hatî çêkirin. algorithm hejmartina girêdanê bi algorîtmaya nîşankirinê (Mark û Sweep). Motor ji bo pêvajoya JavaScript-ê di gerokê de tê bikar anîn NetSurf.

Lihevhatina tevahî bi taybetmendiyên Ecmascript 5.1 û qismî peyda dike alîkarî Ecmascript 2015 û 2016 (E6 û E7), di nav de piştgirîya nebata Proxy ji bo virtualkirina milkê, Arrays Typeded, ArrayBuffer, Node.js Buffer, API-ya şîfrekirinê, tişta sembol, hwd. Ew debuggerek çêkirî, motorek birêkûpêk a birêkûpêk, û binepergalek ji bo piştgiriya Unicode vedihewîne. Di heman demê de pêvekirinên taybetî jî têne peyda kirin, wek piştgiriya korûtîn, çarçoveyek têketinê ya çêkirî, mekanîzmayek barkirina modulê ya bingehîn-CommonJS, û pergalek cachkirina bytecode ku dihêle hûn fonksiyonên berhevkirî hilînin û bar bikin.

Di weşana nû de pêkanîn bangên nû ji duk_to_stacktrace () û duk_safe_to_stacktrace () re ji bo bidestxistina şopên stikê, duk_push_bare_array () ji bo zêdekirina nimûneyên array serbixwe. Fonksiyonên duk_require_constructable() û duk_require_constructor_call() hatine eşkere kirin. Bi taybetmendiya ES2017 re lihevhatina çêtir kirin. Xebata bi array û tiştan re xweştir bûye. Vebijarka "-no-oto-temam" li navrûya duk CLI hate zêdekirin da ku temamkirina têketinê neçalak bike.

Source: opennet.ru

Add a comment