Na voljo je nova izdaja JavaScript motorja elk 2.0.9, zasnovanega za uporabo v sistemih z omejenimi viri, kot so mikrokrmilniki, vključno z napravami ESP32 in Arduino Nano s 2 KB RAM in 30 KB Flash pomnilnika. Za delovanje virtualne igre je potrebnih le 100 bajtov pomnilnika in 20 KB prostora na shranjevanju. Koda projekta je napisana v jeziku C in je licencirana pod GPLv2. Za gradnjo projekta je dovolj C-compiler — dodatne odvisnosti niso potrebne. Projekt razvijajo razvijalci operacijskega sistema za IoT naprave Mongoose OS, JavaScript motorja mJS in vgrajene tehnologije. spletnega strežnika Mongoose (se uporablja v izdelkih podjetij, kot so Siemens, Schneider Electric, Broadcom, Bosch, Google, Samsung in Qualcomm).
Glavna funkcija Elk je ustvarjanje programskih orodij za mikrokrmilnike v jeziku JavaScript, ki izvajajo različne avtomatizacijske naloge. Motor je prav tako primeren za vgradnjo obdelovalcev v jeziku JavaScript v aplikacije v C/C++. Za uporabo motorja v vašem zodu je dovolj, da v drevo izvorne kode vključite datoteko elk.c, priključite glavno datoteko elk.h in uporabite klic js_eval. Dovoljeno je klicanje funkcij, opredeljenih v C/C++ kodi, iz JavaScript skript ter obratno. Koda JavaScript se izvaja v zaščitenem in izoliranem okolju od glavne kode z uporabo interpretorja, ki ne generira bajtkod in ne uporablja dinamičnega dodeljevanja spomina.
V Elk je implementirana majhna, a dovolj velika podmnožica specifikacije Ecmascript 6. Konkretno, podprt je osnovni niz operatorjev in tipov, vendar ne podpira tabel, prototipov, izrazov this, new in delete. Namesto var in const se priporoča uporaba let, namesto do, switch in for pa while. Standardna knjižnica ni na voljo, tj. takšni objekti, kot so Date, Regexp, Function, String in Number, niso na voljo.
Izvor: opennet.ru
