Snek 1.5, eine Python-ähnliche Programmiersprache für eingebettete Systeme, ist verfügbar

Keith Packard (Keith Packard), aktiver Debian-Entwickler, Leiter des X.Org-Projekts und Schöpfer vieler X-Erweiterungen, darunter XRender, XComposite und XRandR, опубликовал neue Version der Programmiersprache Snek 1.5, die als vereinfachte Version der Python-Sprache betrachtet werden kann, angepasst für die Verwendung auf eingebetteten Systemen, die nicht über genügend Ressourcen verfügen MicroPython и CircuitPython. Snek erhebt keinen Anspruch auf vollständige Unterstützung der Python-Sprache, kann aber auf Chips mit nur 2 KB RAM, 32 KB Flash-Speicher und 1 KB EEPROM verwendet werden. Projektnummer vertrieben von lizenziert unter GPLv3. Versammlungen bereit für Linux, Windows und macOS.

Der Bedarf an einer neuen Sprache entstand während der Lehrpraxis von Keith Packard, der den Schülern gerne eine Sprache beibringen wollte, die für den Einsatz auf Arduino-Boards geeignet ist und in ihren Aufgaben dem Lego-Logo ähnelt, aber die Grundlage für eine weitere Programmierausbildung werden könnte . Die wichtigsten Anforderungen an die neue Sprache waren textueller Natur (Demonstration realer Programmiermethoden, die nicht auf eine grafische Oberfläche und Maus angewiesen sind).
Bereitstellung der Grundlage für eine umfassende Programmierausbildung und die Kompaktheit der Sprache (die Fähigkeit, die Sprache in wenigen Stunden zu lernen).

Snek verwendet die Semantik und Syntax von Python, unterstützt jedoch nur eine begrenzte Teilmenge der Funktionen. Eines der Ziele, die bei der Entwicklung berücksichtigt werden, ist die Aufrechterhaltung der Abwärtskompatibilität – Programme auf Snek können mit vollwertigen Python 3-Implementierungen ausgeführt werden. Schüler, die mit Snek vertraut sind, können sofort mit dem Erlernen von Python fortfahren und ihr vorhandenes Wissen bei der Arbeit mit Python nutzen.

Snek ist auf eine Vielzahl eingebetteter Geräte portiert, darunter Arduino, Feather/Metro M0 Express, Adafruit Crickit, Adafruit ItsyBitsy, Lego EV3 und µduino-Boards, und bietet Zugriff auf GPIOs und verschiedene Peripheriegeräte. Gleichzeitig entwickelt das Projekt auch einen eigenen offenen Mikrocontroller Snekboard (ARM Cortex M0 mit 256 KB Flash und 32 KB RAM), konzipiert für die Verwendung mit Snek oder CircuitPython und darauf ausgerichtet, Roboter mit LEGO-Teilen zu unterrichten und zu bauen. Tools zum Erstellen von Snekboard gesammelt beim Crowdfunding.

Für die Entwicklung von Anwendungen auf Snek kann ein Code-Editor verwendet werden Mu (Patches zur Unterstützung) oder Ihre eigene Konsolen-IDE Snekde, das mithilfe der Curses-Bibliothek geschrieben wurde und eine Schnittstelle zum Bearbeiten von Code und zur Interaktion mit dem Gerät über einen USB-Anschluss bietet (Sie können Programme sofort im Eeprom des Geräts speichern und Code vom Gerät laden).

Snek 1.5, eine Python-ähnliche Programmiersprache für eingebettete Systeme, ist verfügbar

In der neuen Version:

  • Es wurde ein Port für das Arduino Uno-Board hinzugefügt, der dem Port für das Duemilanove-Board ähnelt, aber einen Firmware-Ersatz für den Atmega 16u2 enthält.
  • Korrekte Unterstützung für Vergleichsketten hinzugefügt (a < b < c).
  • Adafruit Circuit Playground Express-Boards bieten Audioausgabefunktion.
  • Für Duemilanove-Boards ist der Bootloader aktiviert OptibootSo können Sie Snek ersetzen, ohne ein separates Programmiergerät verwenden zu müssen.

Neben Snek auch Keith Packard entwickelt Standard-C-Bibliothek PicoLibc, das auf eingebetteten Geräten mit wenig RAM verwendet werden kann.

Source: opennet.ru

Kommentar hinzufügen