Kursplan för Semantik för programmeringsspråk

Semantics of Programming Languages

Kursplan

  • 5 högskolepoäng
  • Kurskod: 1DL311
  • Utbildningsnivå: Grundnivå
  • Huvudområde(n) och successiv fördjupning: Datavetenskap G2F

    Förklaring av koder

    Koden visar kursens utbildningsnivå och fördjupning i förhållande till andra kurser inom huvudområdet och examensfordringarna för generella examina:

    Grundnivå

    • G1N: har endast gymnasiala förkunskapskrav
    • G1F: har mindre än 60 hp kurs/er på grundnivå som förkunskapskrav
    • G1E: innehåller särskilt utformat examensarbete för högskoleexamen
    • G2F: har minst 60 hp kurs/er på grundnivå som förkunskapskrav
    • G2E: har minst 60 hp kurs/er på grundnivå som förkunskapskrav, innehåller examensarbete för kandidatexamen
    • GXX: kursens fördjupning kan inte klassificeras

    Avancerad nivå

    • A1N: har endast kurs/er på grundnivå som förkunskapskrav
    • A1F: har kurs/er på avancerad nivå som förkunskapskrav
    • A1E: innehåller examensarbete för magisterexamen
    • A2E: innehåller examensarbete för masterexamen
    • AXX: kursens fördjupning kan inte klassificeras

  • Betygsskala: Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
  • Inrättad: 2013-03-21
  • Inrättad av: Teknisk-naturvetenskapliga fakultetsnämnden
  • Reviderad: 2022-10-17
  • Reviderad av: Teknisk-naturvetenskapliga fakultetsnämnden
  • Gäller från: HT 2023
  • Behörighet:

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

  • Ansvarig institution: Institutionen för informationsteknologi

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.

Om särskilda skäl finns får examinator göra undantag från det angivna examinationssättet och medge att en enskild student examineras på annat sätt. Särskilda skäl kan t.ex. vara besked om särskilt pedagogiskt stöd från universitetets samordnare för studenter med funktionsnedsättning.

Övriga föreskrifter

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

Litteratur

Litteraturlista

Gäller från: HT 2023

I bibliotekets söktjänst kan du se om en titel finns elektroniskt.

Resurser

Boken finns även som elektronisk resurs.

  • Nielson, Hanne Riis.; Nielson, Flemming. Semantics with applications: an appetizer

    London: Springer-Verlag London Limited, 2007

    Se bibliotekets söktjänst