mbeddr als Eclipse-Projekt vorgeschlagen
mbeddr ist ein Ansatz zur Entwicklung von Embedded-Software, der auf der Programmiersprache C, domänenspezifischen Sprachen (DSLs) und formalen Verifikationstechniken basiert.
- Alexander Neumann
Zur EclipseCon Europe 2013, die diese Woche in Ludwigsburg stattfindet, wurde bekannt gegeben, dass die maßgeblich vom IT-Dienstleister itemis entwickelte Programmierumgebung mbeddr als Eclipse-Projekt vorgeschlagen wurde. Die Entwickler verstehen mbeddr als Ansatz zur Entwicklung von Embedded-Software, der auf der Programmiersprache C, genauer C99, domänenspezifischen Sprachen (DSLs) und formalen Verifikationstechniken basiert. Mit mbeddr lassen sich DSLs mit C integrieren. Die passenden Sprachabstraktionen sollen die formale Verifikation des Codes erleichtern.
Abgesehen davon, dass itemis schon lange als strategisches Mitglied ein Förderer und ein Anwender von Eclipse ist, fiel die Wahl auf die Eclipse Foundation, da ich die Open-Source-Organisation im Umfeld des Internet der Dinge mit zahlreichen Entwicklungen verdient gemacht hatte und die Eclipse-Plattform in vielen Embedded-Projekten gesetzt ist
Interessanterweise beruht die IDE nicht etwa auf dem Eclipse Modeling Framework (EMF) oder Xtext, die im Eclipse-Umfeld einen ähnliches Aufgabenfeld beackern, sondern auf JetBrains' Meta Programming System (MPS), das das sprachorientierte Programmierparadigma umsetzt. Statt ein Problem in einer vorgegebenen Programmiersprache zu lösen, entwirft der Entwickler hierbei zunächst eine domänenspezifische Sprache, mit der er die gewünschten Anforderungen im Idealfall besser abbilden kann. MPS selbst ist jedoch nicht Bestandteil des angedachten neuen Eclipse-Projekts. Interessierte finden es unter der Apache-Lizenz auf den Servern von JetBrains. Außerdem verwendet mbeddr das Eclipse-Projekt CDT Debug.
Die Entwickler möchten nicht ausschließen, das mbeddr auch irgendwann Sprachen wie C++ und Ada unterstützt. Schon mal vorgesehen ist die Integration mit Analyse-Werkzeugen wie CBMC, NuSMV und yices ist vorgesehen.
Siehe dazu auch:
- Bernd Kolb, Markus Völter; Sprachschöpfer; mbeddr: Embedded-Entwicklung mit erweiterbarem C; Artikel auf heise Developer
(ane)