02332 Compilerteknik

2023/2024

Kursusinformation
Compiler Construction
Dansk
5
Diplomingeniør
Kurset udbydes som enkeltfag
E4A (tirs 13-17)
Ved overtegning har diplomstuderende fortrinsret.
Campus Lyngby
Klasseundervisning og laboratoriearbejde.
13-uger
E4A
Skriftlig eksamen og bedømmelse af opgave(r)
Der er obligatoriske projekter, som tæller 30% og en skriftlig eksamen, som tæller 70%.
Skriftlig eksamen: 4 timer
Alle hjælpemidler er tilladt
7-trins skala , ekstern censur
(02312/02324/62514).­02326
Sebastian Alexander Mödersheim , Tlf. (+45) 4525 3591 , samo@dtu.dk
01 Institut for Matematik og Computer Science
I studieplanlæggeren
Kontakt underviseren for information om hvorvidt dette kursus giver den studerende mulighed for at lave eller forberede et projekt som kan deltage i DTUs studenterkonference om bæredygtighed, klimateknologi og miljø (GRØN DYST). Se mere på http://www.groendyst.dtu.dk
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.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • 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.
Sidst opdateret
04. maj, 2023