Sök i kursutbudet

Använda sökfunktionen för att hitta i Chalmers utbildningsutbud, både vad gäller kurser och program. När det finns en kurshemsida visas en hus-symbol som leder till denna sida. Tänk på att välja det läsår du vill se information om.
Sök program och utbildningsplaner


Institutionernas kurser för doktorander

​​​​​​​​​​​​​​​​​​​​

Kursplan för

Läsår
Kursen är nedlagd 
DAT122 - Programmeringsparadigmer  
 
Kursplanen fastställd 2015-02-12 av programansvarig (eller motsvarande)
Ägare: TKDAT
7,5 Poäng
Betygskala: TH - Fem, Fyra, Tre, Underkänt
Utbildningsnivå: Grundnivå
Huvudområde: Datateknik, Informationsteknik
Institution: 37 - DATA- OCH INFORMATIONSTEKNIK


Undervisningsspråk: Engelska
Sökbar för utbytesstudenter

Modul   Poängfördelning   Tentamensdatum
Lp1 Lp2 Lp3 Lp4 Sommarkurs Ej Lp
0115 Laboration 3,0 hp Betygskala: UG   3,0 hp    
0215 Tentamen 4,5 hp Betygskala: TH   4,5 hp    

I program

MPALG DATAVETENSKAP - ALGORITMER, PROGRAMSPRÅK OCH LOGIK, MASTERPROGRAM, Årskurs 1 (valbar)
MPALG DATAVETENSKAP - ALGORITMER, PROGRAMSPRÅK OCH LOGIK, MASTERPROGRAM, Årskurs 2 (valbar)
TKDAT DATATEKNIK, CIVILINGENJÖR, Årskurs 2 (valbar)
TKDAT DATATEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
TKITE INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)

Examinator:

Forskarassistent  Jean-Philippe Bernardy


Ersätter

DAT120   Programming paradigms DAT121   Programming paradigms


Behörighet:

För kurser på grundnivå inom Chalmers utbildningsprogram gäller samma behörighetskrav som till de(t) program där kursen ingår i programplanen.

Kursspecifika förkunskaper

Grundläggande kunskaper om funktionell programmering (t.ex. TDA555). Grundläggande kunskaper om imperative eller objektorienterad programmering (t.ex. EDA481 eller DAT043). Grundläggande kunskaper om datastrukturer (t.ex. DAT037)

Syfte

  • Introducera studenterna till programeringsspråksdesign, semantik och implementation.
  • Lära ut meningen av de viktigaste programeringsspråkskonstruktionerna, genom tolkning och översättning till andra, mer grundläggande konstruktioner.
  • Förse studenterna med verktyg för att arbeta med valfri paradigm, oavsett vilket programmeringsspråk de använder.

Lärandemål (efter fullgjord kurs ska studenten kunna)

Kunskap och förståelse
  • Förklara meningen av olika attribut i programmeringsspråk med hjälp av operativa tolkningar eller denotationstolkningar.
  • Förklara och kontrastera huvudprinciperna hos olika paradigmer, både konceptuellt och avseende attribut i programmeringsspråk.
  • Känna till förhållanden mellan konventionella programmeringsspråk, deras attribut och till vilken paradigm de hör.
Färdighet och förmåga
  • Skriva små idiomatiska program i språk som representerar olika paradigmer.
  • Läsa program skrivna idiomatisk i en viss paradigm, och översätta (koda) dem i språk som inte följer samma paradigm.
  • Läsa icke-idiomatiska program och skriva om dem i deras ideomatiska paradigm.

Värderingsförmåga och förhållningssätt

  • Känna igen vilken paradigm ett program tillhör, oavsett oviktiga implementationsdetaljer.

Innehåll

Kursen tar upp grundläggande koncept för design, definition och implementation av moderna programmeringsspråk i vanliga programmeringsparadigmer, inklusive imperativa, objektorienterade, logiska, parallella och funktionella språk.
Kursen innehåller:
En formell introduktion till varje paradigm
Teoretiska och praktiska studier av transformationer mellan olika paradigmer.
Exempel av sådana transformationer inkluderar:
  • introduktion/avlägsnande av hopp/loopar,
  • introduktion/avlägsnande av rekursion/stack,
  • introduktion/avlägsnande av högre ordningens funktioner/closures,
  • introduktion/avlägsnande av processer/fortsättningar,
  • introduktion/avlägsnande av explicit sökning.

I de flesta fall används programmeringsspråket Haskell  för att uttrycka dessa transformationer.

Organisation

Kursen består av föreläsningar samt teoretiska och praktiska övningar.

Litteratur

Se separat literaturlista.

Examination

Examinationen har två delar:
  • En individuell skriftlig tentamen.
  • Ett antal datorövningar.


Sidansvarig Publicerad: må 13 jul 2020.