Visuelle Sprachen und Umgebungen

Veranstaltung im Frühjahrstrimester 2004

Visuelle Sprachen und Umgebungen (ViSU)

Mark Minas


Termin:

  • Dienstag, 10:15 - 11:45 Uhr, Rm. 2417 im Geb. 41/400
  • Freitag, 08:30 - 10:00 Uhr, Rm. 2417 im Geb. 41/400

Wahlpflichtveranstaltung für die Vertiefungsrichtung 'Theoretische und Praktische Informatik'
Geeignet für Hauptstudium 9. oder 6. Trimester, Scheinerwerb durch Kolloquium oder Vortrag oder Lösung von gestellten Aufgaben


Überblick

Anders als bei den weit verbreiteten rein textuellen Programmiersprachen wie C, C++ oder Java, machen visuelle Programmiersprachen starken Gebrauch von mehrdimensionalen graphischen Darstellungen. Durch die bildliche statt der rein textuellen Darstellung sollen sie das Erstellen und den Umgang damit formulierter Programme vereinfachen. Universelle visuelle Programmiersprachen wie z.B. Prograph werden bislang zwar eher selten eingesetzt, doch sind einige visuelle Programmiersprachen für spezielle Anwendungsfälle auch industriell sehr erfolgreich, z.B. die graphischen Sprachen zur Programmierung Speicherprogrammierbarer Steuerungen gemäß IEC 61131. Der Erfolg visueller Sprachen hängt dabei viel stärker von den zur Verfügung stehenden (visuellen) Umgebungen ab als bei den textuellen Programmiersprachen, für die im Grunde Texteditor und Compiler genügen.

Wie bei der Nutzung textueller Programmier- und Dialogsprachen stellt sich bei visuellen Sprachen aber das Problem ihrer exakten Definition. Dies gilt umso mehr, wenn darauf basierende graphische - also visuelle - Werkzeuge entwickelt und angewandt werden sollen. In Analogie zu textuellen Sprachen wurden und werden verschiedene Ansätze entwickelt, Syntax und Semantik von visuellen Sprachen präzise zu beschreiben, u.a., um daraus speziell auf die definierte Sprache zugeschnittene, visuelle Umgebungen möglichst automatisch zu erzeugen. Damit versucht man auch in diesem Gebiet, die bei der Erstellung von Compilern für textuelle Programmiersprachen etablierte und erfolgreiche Methodik zu nutzen: Dort ist es üblich, wesentliche Bestandteile (Parser etc.) mit Hilfe sogenannter Compilergeneratoren automatisch aus der Sprachdefinition in Form einer attributierten kontextfreien Grammatik zu erzeugen.

In der Vorlesung werden verschiedene Ansätze vorgestellt, visuelle Sprachen präzise zu beschreiben und solche Beschreibungen für die Erstellung visueller Umgebungen zu nutzen. In den Übungen werden diese Verfahren an praktischen Beispielen angewandt. Darüber hinaus werden einige existierende visuelle (Programmier-) Umgebungen vorgestellt.

Folien

  • 06.04.: Kap. 1: Einführung und Übersicht [pdf]
  • 20.04.: Kap. 2: Überblick über Spezifikationsmethoden für visuelle Sprachen I [pdf]
  • 23.04.: Kap. 3: Überblick über Spezifikationsmethoden für visuelle Sprachen II [pdf]
  • 27.04.: Übung
  • 30.04.: Kap. 4: Positional Grammars (VLCC) [pdf], 1. Übungsblatt [pdf]
  • 04.05.: Übung
  • 06.05.: Kap. 5: Graphtransformationssysteme [pdf]
  • 11.05.: Kap. 6: Ansatz von Andries/Engels/Rekers und Geschichtete Graphgrammatiken [pdf], 2. Übungsblatt [pdf]
  • 14.05.: Übung
  • 18.05.: Kap. 7: VisPro und GenGED [pdf]
  • 19.05.: Kap. 8: DiaGen, Teil I [pdf], 3. Übungsblatt [pdf]
  • 25.05.: Übung
  • 26.05.: Kap. 9: DiaGen, Teil II [pdf], 4. Übungsblatt [pdf]
  • 01.06.: Übung
  • 08.06.: Übung
  • 09.06.: Übung
  • 15.06.: Kap. 10: Prograph [pdf], 5. Übungsblatt [pdf]
  • 18.06.: Übung
  • 22.06.: Kap. 11: ToonTalk [pdf], 6. Übungsblatt [pdf]
  • 25.06.: Übung
  • 29.06.: Übung

Literatur etc.

Vortragsthemen