02343 Oversættere og fortolkere

2025/2026

Kursusinformation
Compilers and Interpreters
Engelsk
5
Diplomingeniør
Obligatorisk kursus (B Eng), IT-elektronik
Obligatorisk kursus (B Eng), Softwareteknologi
F3A (tirs 8-12) og F4B (fre 8-12)
Kun i 13 af de 26 slots bliver brugt. Kursusaktiviteter finder sted tirsdage og fredage (sammen med 02141). Aktivitetsplanen vil blive annonceret på DTU Learn.
Campus Lyngby
Primært som et projektbaseret læringsforløb. Det vil inholde forelæsninger, teoretiske øvelser, programmeringsøvelser og en obligatorisk opgave.
13-uger
During the semester
Bedømmelse af øvelser
Et antal individualiserede opgaver udgør den samlede vurdering.
Alle hjælpemidler - med adgang til internettet
7-trins skala , intern bedømmelse
02141.02143.02332
01904.02326.02312.02324 , Grundlæggende viden om diskret matematik (logik, mængder, grafer, funktioner, induktion) - som forudsat f.eks. i 01904 Grundlæggende viden om algoritmer og datastrukturer - som forudsat f.eks. i 02326. Grundlæggende viden om funktionel programmering - som forudsat f.eks. i 02312 og 02324.
Alberto Lluch Lafuente , Lyngby Campus, Bygning 321, Tlf. (+45) 4525 3736 , albl@dtu.dk
01 Institut for Matematik og Computer Science
https://courses.compute.dtu.dk/02143
I studieplanlæggeren
Overordnede kursusmål
De studerende vil lære at bygge en parser, en Oversætter og en fortolker til et simpelt programmeringssprog. Kurset følger en projektbaseret læringstilgang, hvor de studerende tilegner sig viden om centrale modeller og formalismer i datalogi, som er nødvendige for at konstruere oversættere og fortolkere.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • forstå betydningen af programmer skrevet i et simpelt programmeringssprog ud fra dets specifikation;
  • anvende udvalgte værktøjer til at køre programmer (f.eks. medfølgende oversætter og fortolkere);
  • relatere programkørsler til betydningen af programmer som defineret i sprogets specifikation;
  • implementere en parser til et simpelt programmeringssprog baseret på sprogspecifikationen;
  • implementere en oversætter til et simpelt programmeringssprog baseret på sprogspecifikationen;
  • implementere en oversætter, der genererer relevant kode på maskinniveau;
  • implementere en fortolker til et simpelt programmeringssprog baseret på sprogspecifikationen;
  • udvælge og anvende datalogiske modeller og formalismer, der er nødvendige for at implementere parsere, oversættere og fortolkere (f.eks. regulære udtryk og grammatikker);
  • forklare forskellen mellem forskellige datalogiske modeller og formalismer;
  • modificere en model i henhold til givne kriterier (f.eks. eliminere tvetydigheder i en grammatik).
Kursusindhold
Kursusindhold

Kurset dækker to hovedområder:

(1)  Konstruktion af parsere, oversættere og fortolkere.

(2) Datalogiske modeller, formalismer og teknikker nødvendige for konstruktion af disse værktøjer, herunder grammatikker, regulære udtryk og operationel semantik.

Kurset er baseret på praktisk erfaring med relevante værktøjer og udviklingen af et projekt bestående af en parser, oversætter og fortolker til et simpelt programmeringssprog. Gennem dette projekt tilegner de studerende sig viden om de nødvendige teoretiske grundlag, og således integreres kursets praktiske og teoretiske dele.

Dette kursus kan også betragtes som en projektbaseret version af 02143.
Litteraturhenvisninger
Lecture notes and online materials.
Bemærkninger
Kurset gives på engelsk.
Sidst opdateret
02. maj, 2025