ఎల్క్ జావాస్క్రిప్ట్ ఇంజిన్ యొక్క కొత్త విడుదల, వెర్షన్ 2.0.9 అందుబాటులో ఉంది. ఇది 2 KB RAM మరియు 30 KB ఫ్లాష్ మెమరీతో ESP32 మరియు Arduino నానో బోర్డులతో సహా మైక్రోకంట్రోలర్ల వంటి వనరుల-నిర్బంధ వ్యవస్థలను లక్ష్యంగా చేసుకుంది. అందించిన వర్చువల్ మెషీన్కు 100 బైట్ల మెమరీ మరియు 20 KB నిల్వ స్థలం మాత్రమే అవసరం. ప్రాజెక్ట్ కోడ్ C లో వ్రాయబడింది మరియు GPLv2 లైసెన్స్ కింద పంపిణీ చేయబడుతుంది. ప్రాజెక్ట్ను నిర్మించడానికి C కంపైలర్ సరిపోతుంది; అదనపు డిపెండెన్సీలు అవసరం లేదు. IoT పరికరాల కోసం ముంగూస్ OS ఆపరేటింగ్ సిస్టమ్ డెవలపర్లు, mJS జావాస్క్రిప్ట్ ఇంజిన్ మరియు ఎంబెడెడ్ ద్వారా ఈ ప్రాజెక్ట్ను అభివృద్ధి చేస్తున్నారు. వెబ్ సర్వర్లు ముంగూస్ (సీమెన్స్, ష్నైడర్ ఎలక్ట్రిక్, బ్రాడ్కామ్, బాష్, గూగుల్, శామ్సంగ్ మరియు క్వాల్కామ్ వంటి కంపెనీల ఉత్పత్తులలో ఉపయోగించబడుతుంది).
వివిధ ఆటోమేషన్ పనులను నిర్వహించే జావాస్క్రిప్ట్లోని మైక్రోకంట్రోలర్ల కోసం ఫర్మ్వేర్ను రూపొందించడం ఎల్క్ యొక్క ముఖ్య ఉద్దేశ్యం. ఇంజిన్ జావాస్క్రిప్ట్ హ్యాండ్లర్లను C/C++ అప్లికేషన్లలో పొందుపరచడానికి కూడా అనుకూలంగా ఉంటుంది. మీ కోడ్లో ఇంజిన్ను ఉపయోగించడానికి, elk.c ఫైల్ను సోర్స్ ట్రీలో ఉంచండి, elk.h హెడర్ ఫైల్ను చేర్చండి మరియు js_eval కాల్ని ఉపయోగించండి. ఇది JavaScript స్క్రిప్ట్ల నుండి C/C++ కోడ్లో నిర్వచించబడిన ఫంక్షన్లను కాల్ చేయడానికి అనుమతించబడుతుంది మరియు వైస్ వెర్సా. జావాస్క్రిప్ట్ కోడ్ బైట్కోడ్ను రూపొందించని మరియు డైనమిక్ మెమరీ కేటాయింపును ఉపయోగించని ఇంటర్ప్రెటర్ను ఉపయోగించి ప్రధాన కోడ్ నుండి వేరుచేయబడిన రక్షిత వాతావరణంలో అమలు చేయబడుతుంది.
Elk Ecmascript 6 స్పెసిఫికేషన్ యొక్క చిన్న ఉపసమితిని అమలు చేస్తుంది, కానీ వర్కింగ్ స్క్రిప్ట్లను రూపొందించడానికి సరిపోతుంది.ముఖ్యంగా, ఇది ప్రాథమిక ఆపరేటర్లు మరియు రకాల సెట్కు మద్దతు ఇస్తుంది, కానీ శ్రేణులు, ప్రోటోటైప్లు, ఇది, కొత్త మరియు తొలగింపు వ్యక్తీకరణలకు మద్దతు ఇవ్వదు. var మరియు కాన్స్ట్లకు బదులుగా లెట్ మరియు డూ బదులుగా అయితే, స్విచ్ మరియు కోసం ఉపయోగించాలని ప్రతిపాదించబడింది. ప్రామాణిక లైబ్రరీ అందించబడలేదు, అనగా. అటువంటి తేదీ, Regexp, ఫంక్షన్, స్ట్రింగ్ మరియు సంఖ్య వస్తువులు లేవు.
మూలం: opennet.ru
