Projektet elk udvikler en kompakt JavaScript-motor til mikrocontrollere.

En ny version af JavaScript-motoren elk 2.0.9 er tilgængelig, designet til brug i systemer med begrænsede ressourcer, såsom mikrokontrollere, herunder ESP32 og Arduino Nano med 2 KB RAM og 30 KB Flash. For at køre den medfølgende virtuelle maskine kræves der kun 100 byte hukommelse og 20 KB plads på lagermediet. Projektets kode er skrevet i C og distribueres under GPLv2-licensen. For at bygge projektet er en C-kompiler tilstrækkelig - der bruges ingen yderligere afhængigheder. Projektet videreudvikles af udviklerne af operativsystemet til IoT-enheder Mongoose OS, JavaScript-motoren mJS og indlejrede webserveren Mongoose (bruges i produkter fra virksomheder som Siemens, Schneider Electric, Broadcom, Bosch, Google, Samsung og Qualcomm).

Hovedformålet med Elk er at skabe firmware til mikrokontrollere i JavaScript, der udfører forskellige automatiseringsopgaver. Motoren er også velegnet til indlejring af JavaScript-behandlere i C/C++-applikationer. For at bruge motoren i din kode er det tilstrækkeligt at placere elk.c-filen i kildekodetræet, inkludere elm.h headerfilen og bruge js_eval-funktionen. Det er tilladt at kalde fra JavaScript-scripts funktioner, der er defineret i C/C++-koden, og omvendt. JavaScript-koden kører i et beskyttet og isoleret miljø fra hovedkoden ved hjælp af en fortolker, der ikke genererer bytecode og ikke bruger dynamisk hukommelsestildeling.

Elk implementerer et lille men tilstrækkeligt subset af Ecmascript 6-specifikationen til opbygning af funktionelle scripts. Især understøttes et grundlæggende sæt af operatorer og typer, men der er ingen understøttelse af arrays, prototyper, this-udtryk, new og delete. I stedet for var og const anbefales det at bruge let, og i stedet for do, switch og for bruges while. Der leveres ikke et standardbibliotek, dvs. der er ingen sådanne objekter som Date, Regexp, Function, String og Number.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster