Hauptinhalt
Dieser Eintrag ist aus dem Wintersemester 2020/21 und möglicherweise veraltet. Es konnte kein aktuelles Äquivalent gefunden werden.
CS 552 — Semantik von Programmiersprachen
(engl. Semantics of Programming Languages)
Niveaustufe, Verpflichtungsgrad | Vertiefungsmodul, abhängig vom importierenden Studiengang |
Lehr- und Lernformen, Arbeitsaufwand |
Vorlesung (4 SWS), Übung (2 SWS), 270 Stunden (90 Std. Präsenzzeit, 180 Std. Selbststudium) |
Leistungspunkte, Voraussetzungen zum Erwerb |
9 LP Studienleistung(en): Erreichen von mindestens 50 Prozent der Punkte aus den wöchentlich zu bearbeitenden Übungsaufgaben und mündliche Präsentation der Lösung von mindestens zwei der Übungsaufgaben. Prüfungsleistung: Mündliche Prüfung oder Klausur |
Sprache, Benotung |
Deutsch,Die Benotung erfolgt mit 0 bis 15 Punkten gemäß der Prüfungsordnung für den Studiengang M.Sc. Informatik. |
Ursprung | M.Sc. Informatik |
Dauer des Moduls, Häufigkeit |
Ein Semester, Regelmäßig alle 3 bis 4 Semester |
Modulverantwortliche(r) | Prof. Dr. Rita Loogen |
Inhalt
Es werden verschiedene Ansätze zur formalen Beschreibung der Bedeutung (Semantik) von Programmiersprachen vorgestellt. Semantikmodelle unterstützen das Verständnis von Programmiersprachen und die Entwicklung von Compilern. 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
Darüber hinaus werden Erweiterungen der Grundtechniken zur Modellierung weiterführender programmiersprachlicher Konstrukte behandelt.
Qualifikationsziele
- Erlernen und Anwenden von verschiedenen Techniken der Semantikgebung,
- Anwendung formaler Methoden zur Beschreibung und Analyse von programmiersprachlichen Konstrukten,
- Einüben wissenschaftlicher Arbeitsweisen (Erkennen, Formulieren, Lösen von Problemen, Schulung des Abstraktionsvermögens),
- Training der mündlichen Kommunikationsfähigkeit in den Übungen durch Einüben der freien Rede vor einem Publikum und bei der Diskussion.
Voraussetzungen
Keine. Empfohlen werden die Kompetenzen, die in den Basismodulen Objektorientierte Programmierung und Deklarative Programmierung vermittelt werden.
Verwendbarkeit
Das Modul kann im FB12 verwendet werden im Studiengang bzw. in den Studiengängen
- B.Sc. Informatik
- M.Sc. Informatik
- M.Sc. Mathematik
- LAaG Informatik
Im Studiengang M.Sc. Informatik kann das Modul im Studienbereich Vertiefungsbereich Informatik absolviert werden.
Das Modul kann auch in anderen Studiengängen absolviert werden (Exportmodul).
Das Modul ist der Theoretischen Informatik zugeordnet. Weitere Informationen zur Wählbarkeit sind der Bereichsbeschreibung zu entnehmen.
Literatur
- Hanne Riis Nielson and Flemming Nielson, Semantics with Applications: A Formal Introduction, Wiley, Chichester, UK, 1992.
- Glynn Winskel: Semantics of Programming, MIT Press 1993.
- Matthew Hennessy, The Semantics of Programming Languages: An Elementary Introduction Using Structural Operational Semantics, Wiley, New York, 1990.
Bitte beachten Sie:
Diese Seite beschreibt ein Modul gemäß dem im Wintersemester 2020/21 aktuellsten gültigen Modulhandbuch. Die meisten für ein Modul gültigen Regeln werden nicht durch die Prüfungsordnung festgelegt, und können daher von Semester zu Semester aktualisiert werden. Folgende Versionen liegen im Online-Modulhandbuch vor:
- WiSe 2016/17
- SoSe 2018
- WiSe 2018/19
- WiSe 2019/20
- WiSe 2020/21
- SoSe 2021
- WiSe 2021/22
- WiSe 2022/23
- WiSe 2023/24 (kein Äquivalent)
Das Modulhandbuch enthält alle Module, unabhängig vom aktuellen Veranstaltungsangebot, vergleichen Sie dazu bitte das aktuelle Vorlesungsverzeichnis in Marvin.
Die Angaben im Online-Modulhandbuch wurden automatisch erstellt. Rechtsverbindlich sind die Angaben der Prüfungsordnung. Wenn Ihnen Unstimmigkeiten oder Fehler auffallen, sind wir für Hinweise dankbar.