Eclipse mbeddr: Neues Embedded-Projekt auf Basis von JetBrains MPS

Hartmut Schlosser

Unter dem Namen mbeddr wurde ein neuer Projektvorschlag bei Eclipse eingereicht. mbeddr ermöglicht die Entwicklung von Software für eingebettete Systeme, indem es eine via DSLs erweiterte Version der C-Programmiersprache sowie eine korrespondierende Entwicklungsumgebung bereit stellt. Ziel ist es, die programmatische und die modellgetriebene Vorgehensweise beim Entwickeln von Embedded-Programmen zu vereinen. Die Low-Level-Programmierung mit C wird genauso unterstützt wie die Abstrahierung über eine domänenspezifische Sprache. 

Ein Vorteil dieses Ansatzes liegt beispielsweise in der leichten Einbindbarkeit von existierenden C-Programmen (Legacy).  Domänenspezifische Erweiterungen, die in der Regel effizienter und ausfallsicherer entwickelt werden können, lassen sich einfach hinzufügen.

Als Basis-Sprache fungiert zunächst C99 (eine C-Version, die von den meisten Embedded Compilern unterstützt wird). Weitere Basis-Sprachen wie C++ oder Ada sind denkbar. Eine Integration mit Analyse-Werkzeugen wie  CBMC, NuSMV oder  yices ist vorgesehen.

Mbeddr wird nicht in der Eclipse-üblichen EMF-Umgebung entwickelt, sondern basiert auf dem JetBrains-Modeling-Projekt MPS (Meta Programming System). Eine zukünftige Integration der beiden Welten wird aber nicht ausgeschlossen. Jetzt schon nutzt mbeddr die Debug-Funktion des Eclipse CDT (C/C++ Development Tools) Projektes.

Der initiale Codbeitrag besteht aus dem kompletten mbeddr-System inklusive einem Set an Sprachen und C-Erweiterungen (bislang auf GitHub und unter http://mbeddr.com zu finden). Zusätzlich wird eine Entwicklungsumgebung für Arduino Hardware mitgeliefert. Das MPS-Projekt selbst ist nicht enthalten. Dieses liegt unter der Apache 2.0 Lizenz bei JetBrains zum Download bereit.

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.