Für die D-Sprache wird eine Laufzeit zur Programmierung von Mikrocontrollern eingeführt

Dylan Graham präsentierte einen leichtgewichtigen Laufzeit-LWDR für die D-Programmierung von Mikrocontrollern, die mit einem Echtzeitbetriebssystem (RTOS) ausgestattet sind. Die aktuelle Version richtet sich an ARM-Cortex-M-Mikrocontroller. Ziel der Entwicklung ist nicht die vollständige Abdeckung aller D-Fähigkeiten, sondern die Bereitstellung grundlegender Werkzeuge. Die Speicherzuweisung erfolgt manuell (neu / löschen), es gibt keinen Garbage Collector, aber eine Reihe von Hooks für die Verwendung von RTOS-Tools.

Die vorgestellte Version unterstützt:

  • Zuweisung und Zerstörung von Klassen- und Heap-Instanzen für Strukturen;
  • Invarianten;
  • behauptet;
  • Verträge, grundlegende RTTI-Tools (auf Kosten von Typeinfo);
  • Schnittstellen;
  • virtuelle Funktionen;
  • abstrakte und statische Klassen;
  • statische Arrays;
  • Zuweisen, Freigeben und Ändern der Größe dynamischer Arrays;
  • Hinzufügen von Elementen zu einem dynamischen Array und Verketten dynamischer Arrays.

Im Status experimenteller Funktionen: Ausnahmen und Throwables (da sie Scavenger-Unterstützung erfordern).

Nicht implementiert:

  • Modulkonstruktoren und -destruktoren;
  • ModuleInfo;
  • Thread-lokale Variablen (TLS);
  • Delegierte und Schließungen;
  • assoziative Arrays;
  • gemeinsame und synchronisierte Daten;
  • gehashte Objekte.

Source: opennet.ru

Kommentar hinzufügen