Duktape 2.4.0 ендірілген JavaScript қозғалтқышының шығарылымы

жарияланды JavaScript қозғалтқышының шығарылымы Duktape 2.4.0, C/C++ тіліндегі жобалардың кодтық базасына ендіруге бағытталған. Қозғалтқыш көлемі жағынан ықшам, жоғары портативті және ресурстарды аз тұтыну. Қозғалтқыштың бастапқы коды C және тілінде жазылған кеңейтіңіз MIT лицензиясы бойынша.

Duktape коды шамамен 160 кБ алады және тек 70 кБ жедел жадты, ал жадты аз тұтыну режимінде 27 кБ жедел жадты жұмсайды. Duktape бағдарламасын C/C++ кодына біріктіру жеткілікті жобаға duktape.c және duktape.h файлдарын қосыңыз және пайдаланыңыз Duktape API C/C++ кодынан JavaScript функцияларын шақыру немесе керісінше. Пайдаланылмаған объектілерді жадтан босату үшін комбинация негізінде құрастырылған аяқтағышы бар қоқыс жинағыш пайдаланылады. алгоритм таңбалау алгоритмімен сілтемелерді санау (Марк және Sweep). Қозғалтқыш браузерде JavaScript өңдеу үшін пайдаланылады NetSurf.

Ecmascript 5.1 техникалық сипаттамаларымен және ішінара толық үйлесімділікті қамтамасыз етеді Қолдау Ecmascript 2015 және 2016 (E6 және E7), соның ішінде сипатты виртуалдандыруға арналған прокси нысанды қолдау, Түрленген массивтер, ArrayBuffer, Node.js буфері, API кодтау, Symbol нысаны және т.б. Ол кіріктірілген отладчикті, тұрақты өрнек механизмін және Юникод қолдауына арналған ішкі жүйені қамтиды. Корутиндік қолдау, кірістірілген тіркеу жүйесі, CommonJS негізіндегі модульді жүктеу механизмі және құрастырылған функцияларды сақтауға және жүктеуге мүмкіндік беретін байт кодты кэштеу жүйесі сияқты арнайы кеңейтімдер де қамтамасыз етілген.

Жаңа шығарылымда жүзеге асырылды стек іздерін алу үшін duk_to_stacktrace() және duk_safe_to_stacktrace() жаңа қоңыраулар, тәуелсіз массив даналарын қосу үшін duk_push_bare_array(). duk_require_constructable() және duk_require_constructor_call() функциялары жалпыға қолжетімді болды. ES2017 спецификациясымен жақсартылған үйлесімділік. Массивтермен және нысандармен жұмыс оңтайландырылды. Енгізуді аяқтауды өшіру үшін duk CLI интерфейсіне «--но-авто-толтыру» опциясы қосылды.

Ақпарат көзі: opennet.ru

пікір қалдыру