DD2481 Principer för programspråk 7,5 hp
Välj termin och kursomgång
Välj termin och kursomgång för att se aktuell information och mer om kursen, såsom kursplan, studieperiod och anmälningsinformation.
Kursval
Gäller för kursomgång
VT 2025 popl25 programstuderande
Anmälningskod
60253
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
Kurslitteratur
Examination och slutförande
När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.
Betygsskala
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
Möjlighet till plussning
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
Ges av
Huvudområde
Utbildningsnivå
Påbyggnad
DD2489 Kompilatorkonstruktion
Kontaktperson
Övrig information
Betygskriterier meddelas vid kursstart.
I denna kurs tillämpas EECS hederskodex, se:
http://www.kth.se/eecs/utbildning/hederskodex