ΠŸΡƒΡΠΊΠ°Π½Π΅Ρ‚ΠΎ Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½ JavaScript Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» Duktape 2.4.0

ΠŸΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° JavaScript Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» Duktape 2.4.0, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ към Π²Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π² ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ‚Π° Π±Π°Π·Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π½Π° Π΅Π·ΠΈΠΊ C/C++. ДвигатСлят сС ΠΎΡ‚Π»ΠΈΡ‡Π°Π²Π° с ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΈ, висока прСносимост ΠΈ ниско ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° рСсурси. Π˜Π·Ρ…ΠΎΠ΄Π½ΠΈΡΡ‚ ΠΊΠΎΠ΄ Π½Π° Π΄Π²ΠΈΠΆΠΊΠ° Π΅ написан Π½Π° Π΅Π·ΠΈΠΊ C ΠΈ сС разпространява ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π· MIT.

ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° Duktape Π·Π°Π΅ΠΌΠ° ΠΎΠΊΠΎΠ»ΠΎ 160 kB ΠΈ консумира Π΅Π΄Π²Π° 70 kB RAM, Π° Π² Ρ€Π΅ΠΆΠΈΠΌ с ниско ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ 27 kB RAM. Π—Π° интСграция Π½Π° Duktape Π² ΠΊΠΎΠ΄ Π½Π° C/C++ Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π΄ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ duktape.c ΠΈ duktape.h ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ Duktape API Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° JavaScript ΠΎΡ‚ ΠΊΠΎΠ΄ Π½Π° C/C++ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ. Π—Π° освобоТдаванС Π½Π° Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° сборник Π½Π° Π±ΠΎΠΊΠ»ΡƒΠΊΠ° с Ρ„ΠΈΠ½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€, построСн Π½Π° основата Π½Π° комбинация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ Π½Π° Π±Ρ€ΠΎΠ΅Π½Π΅ Π½Π° ΠΏΡ€Π΅ΠΏΡ€Π°Ρ‚ΠΊΠΈ с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ Π·Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½Π΅ (Mark and Sweep). ДвигатСлят сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° JavaScript Π² Π±Ρ€Π°ΡƒΠ·ΡŠΡ€Π° NetSurf.

ΠžΡΠΈΠ³ΡƒΡ€ΡΠ²Π° сС пълна ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ с спСцификациитС Ecmascript 5.1 ΠΈ частична ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Ecmascript 2015 ΠΈ 2016 (E6 ΠΈ E7), Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ Proxy Π·Π° виртуализация Π½Π° свойства, Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€Π°Π½ΠΈ масиви, ArrayBuffer, Node.js Buffer, Encoding API, ΠΎΠ±Π΅ΠΊΡ‚ Symbol ΠΈ Ρ‚.Π½. Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ Π΅ Π²Π³Ρ€Π°Π΄Π΅Π½ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ, Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» Π·Π° изпълнСниС Π½Π° рСгулярни ΠΈΠ·Ρ€Π°Π·ΠΈ ΠΈ подсистСма Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Unicode. ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½ΠΈ са ΠΈ спСцифични Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ, ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΊΠΎΡ€ΡƒΡ‚ΠΈΠ½ΠΈ, Π²Π³Ρ€Π°Π΄Π΅Π½ Ρ„Ρ€Π΅ΠΉΠΌΡƒΡŠΡ€ΠΊ Π·Π° Π»ΠΎΠ³ΠΈΡ€Π°Π½Π΅, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, Π±Π°Π·ΠΈΡ€Π°Π½ Π½Π° CommonJS, систСма Π·Π° ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π΅ Π½Π° Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄, позволяваща Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ ΠΈ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π’ Π½ΠΎΠ²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ са Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π½ΠΎΠ²ΠΈ извиквания duk_to_stacktrace() ΠΈ duk_safe_to_stacktrace() Π·Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° трасировки Π½Π° стСка, duk_push_bare_array() Π·Π° добавянС Π½Π° нСзависими СкзСмпляри Π½Π° масиви. ΠŸΡƒΠ±Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ duk_require_constructable() ΠΈ duk_require_constructor_call() са ΠΏΡ€Π΅Π²Π΅Π΄Π΅Π½ΠΈ. ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° Π΅ ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚Ρ‚Π° със спСцификацията ES2017. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° с масиви ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ. Π’ CLI интСрфСйса Π½Π° duk Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° опцията β€žβ€”no-auto-completeβ€œ Π·Π° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΡ‚ΠΎ Π΄ΠΎΠ²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° Π²Ρ…ΠΎΠ΄Π°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster