Keith Packard (), zhvillues aktiv i Debian, lider i projektit X.Org dhe krijues i shumë zgjerimeve X, duke përfshirë XRender, XComposite dhe XRandR, një version i ri i gjuhës së programimit , e cila mund të konsiderohet si një variant i thjeshtuar i gjuhës Python, e përshtatur për përdorim në sisteme të inkorporuara, ku burimet janë të kufizuara për përdorimin e dhe . Snek nuk pretendon për mbështetje të plotë të gjuhës Python, por mund të përdoret në çipa që kanë vetëm 2KB RAM, 32KB Flash dhe 1KB EEPROM. Kodi i projektit me licencën GPLv3. Ndërtimet për Linux, Windows dhe macOS.
Kërkesa për një gjuhë të re lindi gjatë praktikës mësimore të Keith Packard, i cili dëshironte të përdorte një gjuhë për të mësuar studentët që do të ishte e përshtatshme për aplikim në bordet Arduino dhe e ngjashme me detyrat e saj me Lego Logo, por që mund të shërbejë si bazë për mësim të mëtejshëm të programimit. Kërkesat kryesore për gjuhën e re ishin karakteri tekstual (demonstrare e metodave reale të programimit, që nuk varen nga ndërfaqja grafike dhe miu),
ofrimi i një baze për mësim të plotë të programimit dhe kompaktësia e gjuhës (aftësia për të mësuar gjuhën brenda disa orëve).
Gjuha Snek përdor semantikën dhe sintaksën e Python, por mbështetet vetëm në një nënsistem të kufizuar të mundësive. Një nga qëllimet e marrë parasysh gjatë zhvillimit është ruajtja e përputhshmërisë prapa—programet në Snek mund të ekzekutohen duke përdorur implementimet e plota të Python 3. Kështu, studentët që njohin Snek, mund të kalojnë menjëherë për në studimin e Python-it të plotë dhe të përdorin punimet e tyre ekzistuese gjatë punës me Python-in.
Snek është portuar për një gamë të gjerë të pajisjeve të inkorporuara, duke përfshirë bordet Arduino, Feather/Metro M0 Express, Adafruit Crickit, Adafruit ItsyBitsy, Lego EV3 dhe µduino, duke ofruar akses në GPIO dhe pajisje periferi të ndryshme. Për më tepër, projekti gjithashtu zhvillon mikroçipin e vet të hapur (ARM Cortex M0 me 256KB Flash dhe 32KB RAM), i projektuar për t'u përdorur me Snek ose CircuitPython, dhe që synon mësimin dhe ndërtimin e robotëve duke përdorur pjesë LEGO. Mjetet për krijimin e Snekboard nëpërmjet crowdfunding-u.
Për zhvillimin e aplikacioneve në Snek mund të përdoret redaktor kodesh () ose një mjedis të integruar zhvillimi të linjës komande , i cili është shkruar duke përdorur bibliotekën Curses dhe ofron një ndërfaqe për redaktimin e kodit dhe ndërveprimin me pajisjen përmes portit USB (mund të ruani menjëherë programet në EEPROM të pajisjes dhe ngarkoni kodin nga pajisja).
Në lëshimin e ri:
- Siç është shtuar një port për bordin Arduino Uno, i cili është i ngjashëm me portin për bordin Duemilanove, por përfshin një zëvendësim për firmware për Atmega 16u2.
- Shtuar mbështetje e saktë për zinxhirët e operacioneve krahasuese (a < b < c).
- Për bordet Adafruit Circuit Playground Express është siguruar mundësia e aktivizimit të zërit.
- Për bordet Duemilanove është përdorur bootloader-i , i cili lejon zëvendësimin e Snek, për të shkuar pa nevojën e përdorimit të një pajisjeje të veçantë për programim.
Përveç Snek, Keith Packard gjithashtu bibliotekën standarde C , e cila mund të përdoret në pajisje të inkorporuara me RAM të vogël.
Burimi: opennet.ru
