рдПрдореНрдмреЗрдбреЗрдб JavaScript рдЗрдВрдЬрд┐рди Duktape 2.4.0 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди

рдкреНрд░рдХрд╛рд╢рд┐рдд JavaScript рдЗрдВрдЬрд┐рди рд░рд┐рд▓реАрдЭ Duktap 2.4.0, C/C++ рднрд╛рд╖реЗрддреАрд▓ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдЪреНрдпрд╛ рдХреЛрдб рдмреЗрд╕рдордзреНрдпреЗ рдПрдореНрдмреЗрдб рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЙрджреНрджреЗрд╢рд╛рдиреЗ. рдЗрдВрдЬрд┐рди рдЖрдХрд╛рд░рд╛рдиреЗ рдХреЙрдореНрдкреЕрдХреНрдЯ рдЖрд╣реЗ, рдЕрддреНрдпрдВрдд рдкреЛрд░реНрдЯреЗрдмрд▓ рдЖрдгрд┐ рдХрдореА рд╕рдВрд╕рд╛рдзрдиреЗ рд╡рд╛рдкрд░рддреЗ. рдЗрдВрдЬрд┐рдирдЪрд╛ рд╕реНрддреНрд░реЛрдд рдХреЛрдб C рдЖрдгрд┐ рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдкреНрд░рд╕рд╛рд░ MIT рдкрд░рд╡рд╛рдиреНрдпрд╛ рдЕрдВрддрд░реНрдЧрдд.

рдбрдХреНрдЯреЕрдк рдХреЛрдб рд╕реБрдорд╛рд░реЗ 160 kB рдШреЗрддреЛ рдЖрдгрд┐ рдлрдХреНрдд 70 kB RAM рд╡рд╛рдкрд░рддреЛ рдЖрдгрд┐ рдХрдореА рдореЗрдорд░реА рд╡рд╛рдкрд░ рдореЛрдбрдордзреНрдпреЗ 27 kB RAM рд╡рд╛рдкрд░рддреЛ. Duktap C/C++ рдХреЛрдбрдордзреНрдпреЗ рд╕рдорд╛рдХрд▓рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреБрд░реЗрд╕рд╛ рдЖрд╣реЗ рдкреНрд░рдХрд▓реНрдкрд╛рдд duktape.c рдЖрдгрд┐ duktape.h рдлрд╛рдЗрд▓реНрд╕ рдЬреЛрдбрд╛ рдЖрдгрд┐ рд╡рд╛рдкрд░рд╛ Duktape API C/C++ рдХреЛрдбрд╡рд░реВрди JavaScript рдлрдВрдХреНрд╢рди рдХреЙрд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрд┐рдВрд╡рд╛ рддреНрдпрд╛рдЙрд▓рдЯ. рдореЗрдорд░реАрдордзреВрди рди рд╡рд╛рдкрд░рд▓реЗрд▓реНрдпрд╛ рд╡рд╕реНрддреВ рдореБрдХреНрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдлрд╛рдпрдирд▓рд╛рдпрдЭрд░рд╕рд╣ рдХрдЪрд░рд╛ рдЧреЛрд│рд╛ рдХрд░рдгрд╛рд░рд╛ рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рддреЛ, рдЬреЛ рд╕рдВрдпреЛрдЬрдирд╛рдЪреНрдпрд╛ рдЖрдзрд╛рд░рд╛рд╡рд░ рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рдорд╛рд░реНрдХрд┐рдВрдЧ рдЕрд▓реНрдЧреЛрд░рд┐рджрдорд╕рд╣ рд▓рд┐рдВрдХ рдореЛрдЬрдгреА (рдорд╛рд░реНрдХ рдЖрдгрд┐ рд╕реНрд╡реАрдк). рдмреНрд░рд╛рдЙрдЭрд░рдордзреНрдпреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрдВрдЬрд┐рдирдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ рдиреЗрдЯрд╕рд░реНрдл.

Ecmascript 5.1 рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрд╕рд╣ рдкреВрд░реНрдг рд╕реБрд╕рдВрдЧрддрддрд╛ рдЖрдгрд┐ рдЖрдВрд╢рд┐рдХ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╕рдорд░реНрдерди Ecmascript 2015 рдЖрдгрд┐ 2016 (E6 рдЖрдгрд┐ E7), рдкреНрд░реЙрдкрд░реНрдЯреА рд╡рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рди, рдЯрд╛рдЗрдк рдХреЗрд▓реЗрд▓реЗ рдЕреЕрд░реЗ, ArrayBuffer, Node.js рдмрдлрд░, рдПрдиреНрдХреЛрдбрд┐рдВрдЧ API, рд╕рд┐рдореНрдмреЙрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдЗ.рд╕рд╛рдареА рдкреНрд░реЙрдХреНрд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рд╕рдкреЛрд░реНрдЯрд╕рд╣. рдпрд╛рдд рдЕрдВрдЧрднреВрдд рдбреАрдмрдЧрд░, рдПрдХ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддреА рдЗрдВрдЬрд┐рди рдЖрдгрд┐ рдпреБрдирд┐рдХреЛрдб рд╕рдорд░реНрдердирд╛рд╕рд╛рдареА рдЙрдкрдкреНрд░рдгрд╛рд▓реА рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рд╕реНрддрд╛рд░ рджреЗрдЦреАрд▓ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд, рдЬрд╕реЗ рдХреА рдХреЛрд░реЛрдЯреАрди рд╕рдкреЛрд░реНрдЯ, рдЕрдВрдЧрднреВрдд рд▓реЙрдЧрд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ, рдХреЙрдордирдЬреЗрдПрд╕-рдЖрдзрд╛рд░рд┐рдд рдореЙрдбреНрдпреВрд▓ рд▓реЛрдбрд┐рдВрдЧ рдпрдВрддреНрд░рдгрд╛ рдЖрдгрд┐ рдПрдХ рдмрд╛рдпрдХреЛрдб рдХреЕрд╢рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЬреА рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рдВрдХрд▓рд┐рдд рдХрд╛рд░реНрдпреЗ рд╕реЗрд╡реНрд╣ рдЖрдгрд┐ рд▓реЛрдб рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ.

рдирд╡реАрди рдкреНрд░рдХрд╛рд╢рди рдордзреНрдпреЗ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рд╕реНрдЯреЕрдХ рдЯреНрд░реЗрд╕ рдорд┐рд│рд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА duk_to_stacktrace() рдЖрдгрд┐ duk_safe_to_stacktrace() рд╡рд░ рдирд╡реАрди рдХреЙрд▓, рд╕реНрд╡рддрдВрддреНрд░ рдЕреЕрд░реЗ рдЙрджрд╛рд╣рд░рдгреЗ рдЬреЛрдбрдгреНрдпрд╛рд╕рд╛рдареА duk_push_bare_array(). duk_require_constructable() рдЖрдгрд┐ duk_require_constructor_call() рдлрдВрдХреНрд╢рдиреНрд╕ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗрдд. ES2017 рддрдкрд╢реАрд▓рд╛рд╕рд╣ рд╕реБрдзрд╛рд░рд┐рдд рд╕реБрд╕рдВрдЧрддрддрд╛. рдЕреЕрд░реЗ рдЖрдгрд┐ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рд╕рд╣ рдХрд╛рд░реНрдп рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ. рдЗрдирдкреБрдЯ рдкреВрд░реНрдгрддрд╛ рдЕрдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА duk CLI рдЗрдВрдЯрд░рдлреЗрд╕рдордзреНрдпреЗ тАЬ--no-auto-completeтАЭ рдкрд░реНрдпрд╛рдп рдЬреЛрдбрд▓рд╛.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛