Semantik för programmeringsspråk

5 hp

Kursplan, Grundnivå, 1DL311

Det finns en senare version av kursplanen.
Kod
1DL311
Utbildningsnivå
Grundnivå
Huvudområde(n) med fördjupning
Datavetenskap G2F
Betygsskala
Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
Fastställd av
Teknisk-naturvetenskapliga fakultetsnämnden, 21 mars 2013
Ansvarig institution
Institutionen för informationsteknologi

Behörighetskrav

60 hp matematik och datavetenskap inklusive Algebra, Logik och bevisteknik, en fortsättningskurs i programmering, programmering i minst ett funktionellt och minst ett imperativt språk.

Mål

Syftet med semantiska beskrivningar är att ge en exakt definition av innebörden av ett programmeringsspråk utan oklarheter eller tvetydigheter. Detta är till nytta vid konstruktion av program som skall använda andra program som data, t.ex. kompilatorer, men även av programmerare för referensändamål.

Efter godkänd kurs ska studenten kunna:

  • förklara och tillämpa formella semantiska beskrivningar av programspråk och andra formella språk, speciellt i operationell semantik.
  • konstruera enkla semantiska beskrivningar i operationell semantik.
  • tillämpa metoder för att visa grundläggande egenskaper hos semantiska beskrivningar.

Innehåll

Användning av formell semantik. Orientering om semantiska metoder (operationell, axiomatisk, denotationell). Egenskaper hos semantiska beskrivningar. Kompositionalitet och strukturell induktion. Strukturell operationell semantik. Naturlig semantik. Tekniker för beskrivning av programspråkskonstruktioner i operationell semantik. Tillämpning av operationell semantik.

Undervisning

Föreläsningar, lektioner och seminarier. Laborationer kan förekomma.

Examination

Kursen examineras kontinuerligt genom muntliga och skriftliga redovisningar samt deltagande i seminarier.

Övriga föreskrifter

Kursen kan ej tillgodoräknas i examen tillsammans med kursen Semantik och principer för programmeringsspråk (2AD514, 2AD516).

FÖLJ UPPSALA UNIVERSITET PÅ

facebook
instagram
twitter
youtube
linkedin