DM546: Oversætterkonstruktion

Det Naturvidenskabelige Studienævn

Undervisningssprog: På dansk eller engelsk afhængigt af underviser, men engelsk ved internationale studerende
EKA: N330034102
Censur: Ekstern prøve
Bedømmelse: 7-trinsskala
Udbudssteder: Odense
Udbudsterminer: Forår
Niveau: Bachelor

STADS ID (UVA): N330034101
ECTS-point: 5

Godkendelsesdato: 25-10-2018


Varighed: 1 semester

Version: Arkiv

Kommentar

15012401(tidligere UVA) er identisk med denne kursusbeskrivelse.

Kurset udbydes ikke længere. Der afholdes reeksamen i forbindelse med eksamens- og reeksamensperioderne i januar 2020, i foråret 2020 og i sommeren i 2020.

Indgangskrav

Ingen

Faglige forudsætninger

Den studerende forventes at have kendskab til stoffet fra DM548 Computerarkitektur og systemprogrammering samt DM507 Algoritmer og datastrukturer. DM553 Kompleksitet og beregnelighed forventes fulgt senest samtidigt med kurset.

Formål

Kursets formål er at give kendskab til begreber og teknikker, der er
nødvendige for at implementere en moderne compiler for et højniveau
imperativt programmeringssprog.

Kurset bygger på færdigheder
opnået i specielt DM546 Oversætterkonstruktion og giver kompetencer til
bachelorskrivning indenfor området.

I forhold til uddannelsens kompetenceprofil har kurset fokus på:
  • et
    solidt kendskab til metoderne fra fagets centrale discipliner, på et
    niveau så de selvstændigt kan bringe disse i anvendelse i konkrete
    problemstillinger.
  • viden om principper for oversættelse mellem formelle sprog.

Målbeskrivelse

For at opnå kursets formål er det læringsmålet for kurset, at den studerende demonstrerer evnen til at:

  • designe
    scannere og parsere udfra top-down såvel som bottom-up paradigmer både
    med og uden brug af værktøjer og kunne opbygge abstrakte syntakstræer i
    forbindelse hermed.
  • designe symboltabeller og gøre rede for, hvordan disse anvendes til typecheck og andre semantiske check.
  • gøre rede for, hvordan udførbar kode kan genereres ud fra et abstrakt syntakstræ.
  • forklare
    om diverse former for kodeoptimering; herunder detaljer omkring,
    hvordan liveness analyse kan anvendes til registerallokering.
  • gøre rede for funktionaliteten af de gennemgåede algoritmer til garbage collection.

Indhold

Kurset indeholder følgende faglige hovedområder:
Scannere, parsere, oversættergenereringsværktøjer, abstrakte syntakstræer, symboltabeller, typecheck, kodegenerering, optimering, liveness analyse, registerallokering, garbage collection.

    Litteratur

    Se BlackBoard for pensumlister og yderligere litteraturhenvisninger.

    Eksamensbestemmelser

    Eksamenselement a)

    Tidsmæssig placering

    April 

    Udprøvninger

    Mundtlig eksamen

    EKA

    N330034102

    Censur

    Ekstern prøve

    Bedømmelse

    7-trinsskala

    Identifikation

    Studiekort

    Sprog

    Følger, som udgangspunkt, undervisningssprog

    Hjælpemidler

    Oplyses på kurset

    ECTS-point

    5

    Uddybende information

    Der afholdes reeksamen i forbindelse med eksamens- og reeksamensperioderne i januar 2020, i foråret 2020 og i sommeren i 2020.

    Eksamensformen ved reeksamen kan være en anden end eksamensformen ved den ordinære eksamen.

    Vejledende antal undervisningstimer

    42 timer per semester

    Undervisningsform

    Undervisningsaktiviteter udmønter sig i en anslået vejledende fordeling af arbejdsindsatsen hos en gennemsnitsstuderende på følgende måde:
    • Introfase (forelæsning, holdtimer) - Antal timer: 21
    • Træningsfase: Antal timer: 21

    I studiefasen får de studerende faglige, personlige og sociale erfaringer, der sætter dem i stand til at befæste og videreudvikle deres videnskabelige kompetencer. Der er fokus på fordybelse, forståelse og udvikling af samarbejdskompetencer.

    Ansvarlig underviser

    Navn E-mail Institut
    Kim Skak Larsen kslarsen@imada.sdu.dk Algorithms

    Skemaoplysninger

    Administrationsenhed

    Institut for Matematik og Datalogi (datalogi)

    Team hos Uddannelsesjura & Registratur

    NAT

    Udbudssteder

    Odense

    Anbefalede studieforløb