Elk долбоору микроконтроллерлер үчүн компакттуу JavaScript кыймылдаткычын иштеп чыгат

Elk 2.0.9 JavaScript кыймылдаткычынын жаңы чыгарылышы жеткиликтүү, ал микроконтроллерлор сыяктуу ресурстары чектелген системаларда, анын ичинде 32 КБ оперативдик эс жана 2 КБ Flash менен ESP30 жана Arduino Nano такталарында колдонууга багытталган. Берилген виртуалдык машинаны иштетүү үчүн 100 байт эстутум жана 20 КБ сактоо мейкиндиги жетиштүү. Долбоордун коду C тилинде жазылган жана GPLv2 лицензиясы боюнча таратылат. Долбоорду куруу үчүн C компилятору жетиштүү - эч кандай кошумча көз карандылыктар колдонулбайт. Долбоор Mongoose OS, mJS JavaScript кыймылдаткычы жана орнотулган Mongoose веб сервери (Siemens, Schneider Electric, Broadcom, Bosch, Google, Samsung жана Qualcomm сыяктуу компаниялардын өнүмдөрүндө колдонулат) IoT түзмөктөрүнүн операциялык системасын иштеп чыгуучулар тарабынан иштелип чыгууда. ).

Elkтин негизги максаты – ар кандай автоматташтыруу тапшырмаларын аткарган JavaScript микроконтроллерлери үчүн микропрограмманы түзүү. Кыймылдаткыч JavaScript иштеткичтерин C/C++ тиркемелерине киргизүү үчүн да ылайыктуу. Кодуңузда кыймылдаткычты колдонуу үчүн, жөн гана elk.c файлын булак дарагына жайгаштырыңыз, elk.h баш файлын киргизиңиз жана js_eval чакырыгын колдонуңуз. C/C++ кодунда аныкталган функцияларды JavaScript скрипттеринен чакырууга уруксат берилет жана тескерисинче. JavaScript коду негизги коддон обочолонгон корголгон чөйрөдө байткод түзбөгөн жана динамикалык эстутумду бөлүштүрүүнү колдонбогон котормочу аркылуу аткарылат.

Elk Ecmascript 6 спецификациясынын кичинекей бөлүгүн ишке ашырат, бирок жумушчу скрипттерди түзүү үчүн жетиштүү.Тактап айтканда, ал операторлордун жана типтердин негизги топтомун колдойт, бирок массивдерди, прототиптерди же бул, жаңы жана өчүрүү туюнтмаларын колдобойт. Var жана const ордуна let, ал эми do ордуна switch жана for колдонуу сунушталат. Стандарттык китепкана каралган эмес, б.а. мындай Date, Regexp, Function, String жана Number объекттери жок.

Source: opennet.ru

Комментарий кошуу