Hoppa till huvudinnehållet
Till KTH:s startsida

DD2481 Principer för programspråk 7,5 hp

Information per kursomgång

Termin

Information för VT 2025 popl25 programstuderande

Studielokalisering

KTH Campus

Varaktighet
2025-03-17 - 2025-06-02
Perioder
P4 (7,5 hp)
Studietakt

50%

Anmälningskod

60253

Undervisningsform

Normal Dagtid

Undervisningsspråk

Engelska

Kurs-PM
Kurs-PM är inte publicerat
Antal platser

Ingen platsbegränsning

Målgrupp

Studenter från årskurs 3 och och studenter antagna på ett masterprogram under förutsättning att kursen kan ingå i programmet.

Planerade schemamoduler
[object Object]

Kontakt

Examinator
Ingen information tillagd
Kursansvarig
Ingen information tillagd
Lärare
Ingen information tillagd
Kontaktperson

Philipp Haller (phaller@kth.se)

Kursplan som PDF

Notera: all information från kursplanen visas i tillgängligt format på denna sida.

Kursplan DD2481 (HT 2021–)
Rubriker med innehåll från kursplan DD2481 (HT 2021–) är markerade med en asterisk ( )

Innehåll och lärandemål

Kursinnehåll

Formella språk, ändliga automater, kontextfria grammatiker.

Tillstånd, räckvidd, livstid, statisk och dynamisk information, effekter, muterbarhet.

Grundläggande operationell semantik.

Abstraktionsmekanismer, modularisering, kontrakt.

Typer, invarianter, programekvivalens.

Verktyg för programanalys.

Exempel på avancerade finesser i programspråk.

Lärandemål

Efter fullgjord kurs ska studenten kunna:

  • beskriva programspråk och programbeteende formellt,
  • resonera om tillstånd, effekter och muterbarhet i program på ett precist sätt,
  • resonera om och använda mekanismer för abstraktion och modularisering,
  • definiera typsystem formellt,
  • bevisa sundhet hos typsystem,
  • resonera om ekvivalens mellan program,
  • definiera och resonera om kontrakt,
  • diskutera öppna frågor om avancerade finesser i programspråk och reflektera kritiskt över dem,
  • skriva program som implementerar olika formalismer, mekanismer och språkfinesser

i syfte att

  • kunna föra djupare diskussioner om programspråksprinciper
  • vara förberedd för kurser i kompilatorteknik.

Kurslitteratur och förberedelser

Särskild behörighet

.

Rekommenderade förkunskaper

Programmeringsteknik, algoritmer och datastrukturer motsvarande någon av kurserna DD1320, DD1321, DD1325, DD1327, DD1338, DD1339, DD1340, DD1341, DD1346 eller ID1020.

Utrustning

Ingen information tillagd

Kurslitteratur

Ingen information tillagd

Examination och slutförande

När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.

Betygsskala

A, B, C, D, E, FX, F

Examination

  • LAB1 - Laborationsuppgifter, 3,5 hp, betygsskala: P, F
  • TEN1 - Tentamen, 2,5 hp, betygsskala: A, B, C, D, E, FX, F
  • UPP1 - Uppsats, 1,5 hp, betygsskala: A, B, C, D, E, FX, F

Examinator beslutar, baserat på rekommendation från KTH:s handläggare av stöd till studenter med funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

Övriga krav för slutbetyg

Godkända laborationsuppgifter, uppsats och tentamen

Möjlighet till komplettering

Ingen information tillagd

Möjlighet till plussning

Ingen information tillagd

Examinator

Etiskt förhållningssätt

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Ytterligare information

Kursrum i Canvas

Registrerade studenter hittar information för genomförande av kursen i kursrummet i Canvas. En länk till kursrummet finns under fliken Studier i Personliga menyn vid kursstart.

Ges av

Huvudområde

Datalogi och datateknik

Utbildningsnivå

Avancerad nivå

Påbyggnad

DD2489 Kompilatorkonstruktion

Kontaktperson

Philipp Haller (phaller@kth.se)

Övrig information

Betygskriterier meddelas vid kursstart.

I denna kurs tillämpas EECS hederskodex, se:
http://www.kth.se/eecs/utbildning/hederskodex