|
Mit Babelsberg/R wurde beim Hasso-Plattner-Institut
eine Programmiersprache entwickelt, die den Einsatz derselben objektorientierten
Constraints sowohl im Rahmen deklarativer als auch imperativer Umgebungen
erlaubt.
Die Programmierung mittels Constraints, der Beschreibung von Abhängigkeiten
und Beschränkungen, ermöglicht es, erwünschte Randbedingungen
oder Eigenschaften, zum Beispiel Wertebereiche, direkt zu spezifizieren.
Compiler oder Laufzeitumgebungen können dadurch automatisch
deren Einhaltung überprüfen. Verstreute Anweisungen, die
Invarianten wiederholt prüfen und wiederherstellen müssen,
vermeidet man und hat die Chance auf deklarativen, kompakten Quelltext.
Programmieren mit Constraints ist dennoch nicht verbreitet: Die
Norm ist imperatives Programmieren. Es gibt zwar Versuche zur Integration
von Constraints mit imperativem Programmieren, doch verhinderte
dieser Einsatz von Constraints in deklarativem Code deren Wiederverwendung
und vice versa.
Nach Aussage seiner Schöpfer hat Babelsberg/R nun die Konstrukte
zur Kapselung und Abstraktion vereinheitlicht, indem sie bekannte
objektorientierte Methodendefinitionen sowohl für imperativen
als auch deklarativen für Code verwendet. Der Prototyp, Babelsberg/R,
unterstützt Rubys objektorientierte Semantik und ist als Ruby-Erweiterung
implementiert. Constraints soll man damit zu existierenden Ruby-Programmen
schrittweise hinzufügen können.
Die Qellen stehen unter der MIT-Lizenz
und sind bei Github
verfügbar.
(mt, hannover)
(siehe auch Heise-News-Ticker:)
Hannover · EDV-Beratung ·
Linux · Novell · Microsoft · Seminar ·
IT-Consult · Netzwerk · LPIC · CLE
|