Enkeltfag
Dansk
5 ECTS
Compilerteknik
Overordnede kursusmål
De studerende lærer at forstå principperne for oversættere. De studerende lærer at bruge og konstruere software-værktøjer til implementering dele af en funktionsdygtig oversætter.
See course description in English
Læringsmål
- forklare de forskellige faser i oversættelse og kørsel
- benytte udvalgte værktøjer relateret til oversættelsesfaserne (fx lexers, parsers)
- forklare de forskellige elementer i beskrivelser af programmeringssprog
- aflede specifikationer for oversættelsesfaserne, givet en tekstuel beskrivelse af syntaksen for et programmeringssprog
- designe datastrukturer til abstrakt syntaks
- implementere en analyse og kodegenereringsfase, givet en tekstuel beskrivelse af semantikken for et programmeringssprog
- forklare koncepterne af en enkelt målsprog
- udvikle en funktionsdygtig oversætter
- indfri målene som led i en gruppeindsats, samtidig med bevarelse af individuelt ansvar
- kommunikere løsninger til opgaver på en klar og præcis måde
- forklare centrale concepter fra imperativ, objekt-orienteret og funktionelle programmeringssprog og implementere en enkelt fortolker for dem
Kursusindhold
Kurset omhandler principper og hovedfaserne for oversættere:
(1) Leksikalsk analyse (skanning) og værktøjer til generering af skannere.
(2) Syntaktisk analyse (parsing) og værktøjer til generering af parsere.
(3) Semantisk analyse.
(4) Kodegenerering.
Undervisningsform
Klasseundervisning og laboratoriearbejde.