Suche

Semantik von Programmiersprachen


Es werden drei klassische Ansätze zur Semantik von Programmiersprachen besprochen: In der operationalen Semantik wird die Bedeutung eines programmiersprachlichen Konstrukts dadurch festgelegt, wie es auszuführen ist und zu welchen Effekten es führt. In der denotationellen Semantik wird von der spezifischen Ausführungsart abstrahiert und lediglich der Effekt eines Konstrukts betrachtet. Schließlich wird im axiomatischen Ansatz der Effekt eines Konstrukts durch Zusicherungen spezifiziert. Als Beispielsprache für die unterschiedlichen semantischen Ansätze dient eine einfache, imperative WHILE-Sprache, die im Verlauf der Vorlesung um syntaktische Konstrukte erweitert wird.

Schlagwörter: Natürliche Semantik, strukturell-operationelle Semantik, denotationelle Semantik, axiomatische Semantik, Typsysteme, Bereichstheorie

Literatur:

  • Hanne Riis Nielson, Flemming Nielson. Semantics with Applications. John Wiley & Sons, 1992.
  • Glynn Winskel. The Formal Semantics of Programming Languages. The MITPress, 1993.
  • John C. Mitchell. Foundations for Programming Languages. The MIT Press, 1996.
  • John C. Reynolds. Theories of Programming Languages. Cambridge University Press, 1998.

Folien