VL: Semantik von Programmiersprachen
VL 12072 Semantik von Programmiersprachen
Prof. Dr. R. Loogen
Die Vorlesung wird für Studierende der Universitäten Marburg und Gießen angeboten! Die erste Vorlesung wird in Gießen und Marburg getrennt stattfinden. Ab der zweiten Vorlesungswoche findet die Vorlesung in Marburg statt.
Beginn in Gießen: Mittwoch, 20.10.2004, 14.15 - 16.00 Uhr, Hörsaal, Mathematisches Institut, 1. OG, Arndtstr. 2;
Beginn in Marburg: Montag, 25.10.2004, 11.15 - 13.00 Uhr, HS I (Lahnberge)
ab 27.10.2004 gemeinsam: Mittwochs, 14.30 - 18.00 Uhr, HG 201, Biegenstraße 12
Achtung: ab 8. Dezember 2004: im Hörsaalgebäude, HG 6, Biegenstraße 14
UE 12073 Jost Berthold
Montags, 11.30 - 13.00 Uhr, LE HS I (Lahnberge)
Beginn: 1. November 2004
Fachgebiet Klassifikation Semester Fortsetzung Skript
Theoretische Informatik Hauptstudium >=5 nein

Voraussetzungen: Programmierkenntnisse, Mathematische Grundkenntnisse
Querverbindungen: -
Scheinkriterien: Voraussetzungen für einen unbenoteten Schein:
  1. aktive Teilnahme an den Übungen
  2. erfolgreiche Bearbeitung von mindestens 50 % der Übungsaufgaben
  3. erfolgreiche Präsentation der Lösungen von mindestens drei Übungsaufgaben
Für einen benoteten Schein muss zusätzlich ein Kolloquium oder eine Klausur bestanden werden.
Literatur:
  • Glynn Winskel: The Formal Semantics of Programming Languages, MIT Press 1993.
  • K. Slonneger, B. Kurtz: Formal Syntax and Semantics of Programming Languages, Addison-Wesley 1995.
  • Elfriede Fehr: Semantik von Programmiersprachen, Springer 1989.
  • Hanne Riis Nielson, Flemming Nielson: Semantics with Applications - A Formal Introduction, Wiley 1992.
    Da das Nielson-Buch nicht mehr lieferbar ist, haben die Autoren 1999 eine überarbeitete Postscriptversion veröffentlicht.
Zusatzinformationen: Folien aus erster Vorlesung


Übungsblätter: Blatt 1, 27.10.2004 (Postscript, PDF)
Blatt 2, 3.11.2004 (Postscript, PDF)
Blatt 3, 10.11.2004 (Postscript, PDF) Aufgabe 3.2 wird zurückgestellt.
Blatt 4, 17.11.2004 (Postscript, PDF)
Blatt 5, 24.11.2004 (Postscript, PDF)
Blatt 6, 01.12.2004 (Postscript, PDF)
Blatt 7, 08.12.2004 (Postscript, PDF)
Blatt 8 (Weihnachtsblatt), 15.12.2004 (Postscript, PDF)
Blatt 9, 05.01.2005 (Postscript, PDF)
Blatt 10, 12.01.2005 (Postscript, PDF)
Blatt 11, 19.01.2005 (Postscript, PDF)
Blatt 12, 26.01.2005 (Postscript, PDF)
Blatt 13, 02.02.2005 (Postscript, PDF) (nur mündliche Aufgaben)


Inhalt: Es werden verschiedene Ansätze zur formalen Beschreibung der Bedeutung (Semantik) von Programmiersprachen vorgestellt. Formale Semantikmodelle unterstützen das Verständnis von Programmiersprachen und die Entwicklung von Compilern. Unsicherheiten bei der Umsetzung von Algorithmen können verhindert werden. Fehlende Details, Mehrdeutigkeiten und Inkonsistenzen können frühzeitig erkannt und beseitigt werden. Korrektheitsbeweise für Programme und Compiler fußen meist auf einer formalen Semantik. Grundsätzlich unterscheidet man drei verschiedene Ansätze, die in der Vorlesung anhand einer einfachen imperativen Modellsprache eingeführt werden:
  • Operationelle Semantiken: Beschreibung von Berechnungen
  • Denotationelle Semantiken: Beschreibung des Ein-/Ausgabeverhaltens
  • Axiomatische Semantiken: Angabe von Aussagen über Programmeigenschaften
Es werden auch weiterführende Techniken für funktionale und objektorientierte Sprachen und die Beschreibung von Nichtdeterminismus und Parallelität behandelt.


Zuletzt geändert: Tuesday, 07-Dec-2004 15:58:18 CET