Kursplan för läsåret 2001/2002
PROGRAMSPRÅKSTEORIEDA145
Programming Language Theory

Poäng: 5.0 Betygskala: TH. Valfri för: D3. Kursansvarig: Universitetslektor Lennart Andersson, Lennart.Andersson@cs.lth.se. Förkunskapskrav: Godkänt betyg i EDA025/EDA027 Algoritmer och datastrukturer.. Prestationsbedömning: Skriftlig tentamen. Studenterna förväntas presentera lösningar till förelagda problem vid seminarieövningar. Detta tillgodoräknas vid första ordinarie tentamenstillfälle. Webbsida: http://www.cs.lth.se Övrigt: Denna kurs har fr o m 2001/2002 ersatt EDA140 Formella språk och automater.

Mål:
Kursen skall
- ge förmåga att formellt beskriva syntax och semantik för programspråk.
- skapa förståelse för begränsningarna hos olika formalismer att beskriva syntax för språk och ge grunderna för konstruktion av generatorer för lexikal- och syntaxanalysatorer.
- ge förmåga att bevisa egenskaper hos program.

Innehåll:
1. Syntax. Definition av språk med reguljära uttryck, grammatiker och tillståndsmaskiner. Klassifikation av språk och grammatiker.
2. Semantik. Operationell, axiomatisk och denotations-semantik. Attributgrammatiker. Bevis av egenskaper hos program, t ex korrekthet och ekvivalens.
3. Domänteori. Semantik för rekursiva definitioner.

Litteratur:
Winskel G.: Formal Semantics of Programming Languages. MIT Press, 1993. ISBN 0262731037.