TDDA37 KOMPILATORKONSTRUKTION, 3,5 poäng
/Compiler Construction/

För: C3, D4

Utbildningsområde: Teknik    Ämnesgrupp: Datalogi
Fördjupningsnivå: D

Klassning för datavetenskaplig examen: Datavetenskap

Mål:
Att lära ut principerna för konstruktion av kompilatorer, redovisa tillgängliga redskap för konstruktion av en kompilator samt hur minnesutrymme administreras i samband med exekvering av program.

Förkunskaper:
TDDB57 Datastrukturer och algoritmer, TDDA89 Formella språk och automatateori.

Organisation:
På föreläsningarna genomgås den teoretiska delen. Lektionerna syftar till att förbereda laborationerna. Laborationerna, där en fullständig kompilator implementeras för ett litet Pascal-liknande språk, ger en praktisk erfarenhet av kompilatorkonstruktion.

Kursinnehåll:
Under föreläsningarna behandlas: Olika typer av översättare, som t ex kompilatorer och preprocessorer. Lexikalisk analys och metoder för syntaxspecifikation och syntaxanalys. Hantering av deklarativ information. Intern representation av program. Minneshantering och runtime-system. Kod generering och kodoptimering. Olika metoder av felhantering. Inkrementell kompilering. Verktyg för att framställa kompilatorer. Kriterier för språk design. Kursen har en stark laborativ prägel där en hel kompilator för ett litet Pascalliknande språk skall konstrueras.

Kurslitteratur:
Aho, A.V., Sethi, R., Ullman, J.D.: Compiler Principles, Techniques and Tools, Addison-Wesley, Publ Co 1986. Kompendier, utges av institutionen för datavetenskap.

LAB 1En laborationskurs.
TEN 1En skriftlig tentamen.

Engelsk kursplan

Gäller 1997/98, beslut av utbildningsnämnden maj-97