TDDA 43 PROGRAMMERINGSTEORI, 4 poäng

/Programming Theory/
För C3
Utbildningsområde: Teknik
Ämnesgrupp: Datalogi
Fördjupningsnivå: C
Klassning för datavetenskaplig examen: Datavetenskap, datalogi.

Mål:
Kursen avser att ge en introduktion till tekniker och metaspråk för att formellt beskriva ett programspråk. För det ändamålet dras en gräns mellan syntax och semantik för ett språk, och tekniker som är lämpliga för varje del diskuteras. Dessutom urskiljes tre olika användargrupper som ställer olika krav på ett metaspråk. Under kursen undersöks hur varje teknik uppfyller kraven hos respektive grupp.

Förkunskaper:
TDDA 15 Logik, grundkurs, TDDA 69 Data- och programstrukturer.

Påbyggnadskurser:
TDDA 28 Kompilatorer och interpretatorer, TDDA 37 Kompilatorkonstruktion, TDDA 41 Logikprogrammering.

Organisation:
På föreläsningarna och lektionerna genomgås och övas teorin. På lektionerna förbereds även laborationerna.

Kursinnehåll:
Varianter av BNF, attributgrammatik, flernivågrammatik, operationell semantik, denotationssemantik, axiomatisk semantik.

Kurslitteratur:
Kurslitteratur meddelas senare.
Kompendier, utges av institutionen för datavetenskap.

Examination:
LAB 1 En laborationskurs, med inlämningsuppgift.
UPG 1 Inlämningsuppgift.