Detailseite
Tiefe Integration domänenspezifischer Sprachen
Antragsteller
Professor Dr.-Ing. Klaus Ostermann
Fachliche Zuordnung
Theoretische Informatik
Förderung
Förderung von 2012 bis 2016
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 223883118
Domänenspezifische Sprachen (DSLs) sind zu einer der wichtigsten Techniken geworden, um den Abstraktionsgrad in der Softwareentwicklung zu steigern. Wir schlagen Techniken zur tiefen Integration von DSLs in darunterliegende allgemeine Programmiersprachen (GPLs) vor. Mit diesen Techniken können DSLs in Form von sogenannten Sprachbibliotheken definiert und integriert werden. Sprachbibliotheken definieren domänenspezifische Erweiterungen einer Sprache und können mittels normalem Bibliotheksimport in Programmen genutzt werden, ohne den Compiler oder die Entwicklungsumgebung modifizieren zu müssen.Die tiefe Integration von DSLs wirft eine Reihe wichtiger Forschungsfragen für das Sprachdesign solcher DSLs und der zugrundeliegenden GPL auf. Klassische Fragen der Programmiersprachen, wie Modulsysteme, separate Überprüfung, Information Hiding, Kombinierbarkeit oder auch Selbstanwendbarkeit und Rekursion benötigen neue Antworten wenn die Module die kombiniert werden sollen Sprachbibliotheken sind. Auf der anderen Seite eröffnen Sprachbibliotheken jedoch auch die Perspektive, die konzeptuelle Basis von Programmiersprachen und Umgebungen zu vereinfachen, denn sie ermöglichen die Entwicklung einer minimalen Kernsprache/Umgebung aus der die volle Programmierumgebung modular durch Nutzung von Sprachbibliotheken entwickelt werden kann.Ein Schlüsselproblem bei der Erweiterbarkeit von Entwicklungsumgebungen ist das modulare and effiziente Einbinden von Erweiterungen während der Programmierung. Bisherige Konzepte für erweiterbare Entwicklungsumgebungen basieren auf einer strikten Trennung zwischen normalen Programmen und Programmen, die Erweiterungen definieren. Sie benötigen häufig Batch-basierte nicht-modulare Kompilierungstechniken, die es erfordern, dass jede Einbindung einer Erweiterung eine komplette Neukompilierung aller betroffenen Werkzeuge nach sich zieht. Die Realisierung von Sprachbibliotheken erfordert daher auch neue Techniken für inkrementelle Einbindung und Komposition von Sprachen während der Programmierung.Wir werden das Konzept der Sprachbibliotheken auf Basis der Sprachtechnologie Spoofax entwerfen und realisieren und es anhand einer Menge von Sprachbibliotheken für die Entwicklung von Webanwendungen validieren.
DFG-Verfahren
Sachbeihilfen
Internationaler Bezug
Niederlande
Beteiligte Person
Professor Dr. Eelco Visser