DM899: Programming Language Foundations

Det Naturvidenskabelige Studienævn

Undervisningssprog: På dansk eller engelsk afhængigt af underviser, men engelsk ved internationale studerende
EKA: N340167102
Censur: Intern prøve, to eller flere bedømmere
Bedømmelse: 7-trinsskala
Udbudssteder: Odense
Udbudsterminer: Efterår
Niveau: Kandidat

STADS ID (UVA): N340167101
ECTS-point: 10

Godkendelsesdato: 08-04-2025


Varighed: 1 semester

Version: Arkiv

Intern kursuskode

DM899

Indgangskrav

Ingen

Faglige forudsætninger

Studerende forventes at være fortrolige med grundlæggende funktionel programmering og logik.

Formål

Kurset har til formål at introducere studerende til de formelle grundlag for programmeringssprog, deres underliggende principper og grundlæggende metoder til formel ræsonnering om programmets egenskaber.

Målbeskrivelse

Læringsmålet for kurset er, at den studerende demonstrerer selvstændighed i design og analyse af programmeringssprog ved hjælp af formel semantik og ræsonnering. Specifikt forventes det, at den studerende efter kurset er i stand til at:

  • Identificere de centrale byggesten i et programmeringssprog.
  • Beskrive, hvordan disse byggesten interagerer for at danne et programmeringssprog.
  • Forstå ræsonneringsprincipperne for kompleks programadfærd.
  • Formelt designe og implementere et højere-ordens programmeringssprog.

Indhold

Følgende hovedemner er indeholdt i kurset:

  • Abstrakt syntaks
  • Strukturel induktion
  • Transitionssystemer
  • Koinduktion
  • Operationel semantik
  • Lambda-kalkulen
  • kombinatorisk-logiske
  • Programækvivalenser
  • Invarians
  • Typesystemer
  • Curry-Howard-korrespondancen
  • Logiske relationer

Litteratur

Se itslearning for pensumlister og yderligere litteraturhenvisninger.

Eksamensbestemmelser

Eksamenselement a)

Tidsmæssig placering

Efterår og januar

Udprøvninger

Portfolio

EKA

N340167102

Censur

Intern prøve, to eller flere bedømmere

Bedømmelse

7-trinsskala

Identifikation

Studiekort - Fulde navn og SDU brugernavn

Sprog

Følger, som udgangspunkt, undervisningssprog

Varighed

skriftlig eksamen - 2 timer

Hjælpemidler

Alle almindelige hjælpemidler er tilladte, fx lærebøger, noter, computerprogrammer som ikke benytter internettet m.v. 

Internet er ikke tilladt. Du må dog gå ind på kursets hjemmeside i itslearning i forbindelse med åbning af system "DE – Digital Eksamen". Noter fra kurset, som du ønsker at anvende som hjælpemidler, skal downloades til din computer senest dagen før eksamenen. Under eksamenen er det ikke sikkert, at alt kursusmateriale er tilgængeligt for dig.

ECTS-point

10

Uddybende information

Portfolio bestående af følgende elementer:  
  1. Et antal opgaver afleveret undervejs i kurset 
  2. Afsluttende skriftlig prøve i eksamensperioden
For samlet at opnå en bestået karakter skal hhv. element 1 og 2 hver for sig leve op til målbeskrivelserne. 
Bedømmelsen af element 1 finder sted i forbindelse med afviklingen af element 2.  
Element 1 vægter 40% og element 2 vægter 60% af karakteren, idet der dog anlægges en helhedsvurdering. 

 

Vejledende antal undervisningstimer

56 timer per semester

Undervisningsform

Planlagte lektioner:

Samlet antal planlagte lektioner: 56
Heraf:
    Fælles lektioner i klasseværelse/auditorium: 24
    Holdlektioner i klasseværelse: 32

    Fællestimerne vil bestå af en kombination af frontale forelæsninger og gruppediskussioner. Den første vil fokusere på introduktionen af ​​teoretiske modeller og relevante bevisteknikker, mens den anden på deres anvendelse på illustrative problemer og sprog.

    Holdtimerne vil fokusere på at få praktisk erfaring med disse koncepter og værktøjer ved hjælp af korte øvelser og øvelser, som eleverne vil løse individuelt eller i mindre grupper

    Andre planlagte undervisningsaktiviteter omfatter selvstudium af forskellige dele af kursusmaterialet og løsning af hjemmeopgaver, individuelt eller i mindre grupper.

    Ansvarlig underviser

    Navn E-mail Institut
    Marco Peressotti Peressotti@imada.sdu.dk Institut for Matematik og Datalogi
    Stelios Tsampas stelios@imada.sdu.dk

    Skemaoplysninger

    Administrationsenhed

    Institut for Matematik og Datalogi (datalogi)

    Team hos Registratur

    NAT

    Udbudssteder

    Odense

    Anbefalede studieforløb

    Profil Uddannelse Semester Udbuds periode

    Overgangsordninger

    Overgangsordninger beskriver, hvordan et kursus erstatter et andet kursus, når der ændres i et studieforløb.
    Hvis der er lavet en overgangsordning for et kursus vil den fremgå af oversigten.
    Se overgangsordninger for alle kurser på Det Naturvidenskabelige Fakultet.