Release av den inbäddade JavaScript-motorn Duktape 2.4.0

publiceras JavaScript-motorsläpp Duktape 2.4.0, som syftar till att bädda in i kodbasen för projekt i språket C/C++. Motorn är kompakt i storlek, mycket portabel och låg resursförbrukning. Källkoden för motorn är skriven i C och sprida under MIT-licensen.

Duktape-koden tar upp cirka 160 kB och förbrukar endast 70 kB RAM, och i låg minnesförbrukning 27 kB RAM. För att integrera Duktape i C/C++-kod tillräckligt lägg till filerna duktape.c och duktape.h till projektet och använd Duktape API för att anropa JavaScript-funktioner från C/C++-kod eller vice versa. För att frigöra oanvända föremål från minnet används en sopsamlare med en slutbehandlare, byggd på basis av en kombination algoritm länkräkning med markeringsalgoritm (Mark and Sweep). Motorn används för att bearbeta JavaScript i webbläsaren netsurf.

Ger full kompatibilitet med Ecmascript 5.1-specifikationer och delvis stöd Ecmascript 2015 och 2016 (E6 och E7), inklusive Proxy-objektstöd för egenskapsvirtualisering, Typed Arrays, ArrayBuffer, Node.js Buffer, Encoding API, Symbol object, etc. Den innehåller en inbyggd debugger, en motor för reguljära uttryck och ett undersystem för Unicode-stöd. Specifika tillägg tillhandahålls också, såsom coroutine-stöd, ett inbyggt loggningsramverk, en CommonJS-baserad modulladdningsmekanism och ett bytecode-cachesystem som låter dig spara och ladda kompilerade funktioner.

I den nya versionen genomförs nya anrop till duk_to_stacktrace() och duk_safe_to_stacktrace() för att hämta stackspår, duk_push_bare_array() för att lägga till oberoende arrayinstanser. Funktionerna duk_require_constructable() och duk_require_constructor_call() har gjorts offentliga. Förbättrad kompatibilitet med ES2017-specifikationen. Arbetet med arrayer och objekt har optimerats. Lade till alternativet "--no-auto-complete" till duk CLI-gränssnittet för att inaktivera slutförande av inmatning.

Källa: opennet.ru

Lägg en kommentar