Snek 1.5, un llenguatge de programació semblant a Python per a sistemes encastats, està disponible

Keith Packard (Keith Packard), desenvolupador actiu de Debian, líder del projecte X.Org i creador de moltes extensions X, incloses XRender, XComposite i XRandR, publicat nou llançament del llenguatge de programació Snek 1.5, que es pot considerar com una versió simplificada del llenguatge Python, adaptada per al seu ús en sistemes encastats que no tenen prou recursos per utilitzar-los micropython и Circuit Python. Snek no reclama un suport total per al llenguatge Python, però es pot utilitzar en xips amb tan sols 2 KB de RAM, 32 KB de memòria Flash i 1 KB d'EEPROM. Codi del projecte Distribuït per amb llicència GPLv3. Assemblees preparat per a Linux, Windows i macOS.

La necessitat d'un nou llenguatge va sorgir durant la pràctica docent de Keith Packard, a qui li agradaria utilitzar un llenguatge per ensenyar als estudiants que fos adequat per al seu ús a les plaques Arduino i que s'assemblés al Logotip de Lego en les seves tasques, però que pogués esdevenir la base per a una formació posterior en programació. . Els requisits clau per al nou llenguatge eren de naturalesa textual (demostració de mètodes de programació reals que no es basen en una interfície gràfica i un ratolí),
proporcionant la base per a una formació completa en programació i la compacitat de l'idioma (la capacitat d'aprendre l'idioma en poques hores).

Snek utilitza la semàntica i la sintaxi de Python, però només admet un subconjunt limitat de funcions. Un dels objectius que es tenen en compte durant el desenvolupament és mantenir la compatibilitat enrere: els programes a Snek es poden executar mitjançant implementacions completes de Python 3. els estudiants familiaritzats amb Snek poden passar immediatament per continuar aprenent Python complet i utilitzar els seus coneixements existents quan treballen amb Python.

Snek es porta a una àmplia gamma de dispositius incrustats, inclosos Arduino, Feather/Metro M0 Express, Adafruit Crickit, Adafruit ItsyBitsy, Lego EV3 i plaques µduino, proporcionant accés a GPIO i diversos perifèrics. Al mateix temps, el projecte també està desenvolupant el seu propi microcontrolador obert Snekboard (ARM Cortex M0 amb 256 KB Flash i 32 KB de RAM), dissenyat per utilitzar-lo amb Snek o CircuitPython, i destinat a ensenyar i construir robots amb peces LEGO. Eines per crear Snekboard recollit durant el crowdfunding.

Es pot utilitzar un editor de codi per desenvolupar aplicacions a Snek Mu (pedaços de suport) o el vostre propi IDE de consola Snekde, que s'escriu amb la biblioteca Curses i proporciona una interfície per editar codi i interactuar amb el dispositiu mitjançant un port USB (podeu desar els programes immediatament a l'eeprom del dispositiu i carregar el codi del dispositiu).

Snek 1.5, un llenguatge de programació semblant a Python per a sistemes encastats, està disponible

A la nova versió:

  • S'ha afegit un port per a la placa Arduino Uno, que és similar al port per a la placa Duemilanove, però inclou un reemplaçament de firmware per a l'Atmega 16u2.
  • S'ha afegit un suport correcte per a cadenes de comparació (a < b < c).
  • Les plaques Adafruit Circuit Playground Express ofereixen capacitat de sortida d'àudio.
  • Per a les plaques Duemilanove, el carregador d'arrencada està habilitat Optiboot, que us permet substituir Snek sense haver d'utilitzar un dispositiu de programació independent.

A més de Snek, també Keith Packard es desenvolupa biblioteca C estàndard PicoLibc, que es pot utilitzar en dispositius incrustats amb poca memòria RAM.

Font: opennet.ru

Afegeix comentari