Sök i programutbudet

Använd sökfunktionen för att leta efter kurser och program i Chalmers utbildningsutbud. Den programplan och utbildningsplan som avser dina studier är i allmänhet från det läsår du började dina studier.

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

Kursplan för

Läsår
TDA452 - Funktionell programmering  
Functional programming
 
Kursplanen fastställd 2019-02-21 av programansvarig (eller motsvarande)
Ägare: TKITE
7,5 Högskolepoäng
Betygskala: TH - Mycket väl godkänd (5), Väl godkänd (4), Godkänd (3), Underkänd
Utbildningsnivå: Grundnivå
Huvudområde: Datateknik, Informationsteknik
Institution: 37 - DATA- OCH INFORMATIONSTEKNIK


Undervisningsspråk: Engelska
Anmälningskod/tillfälleskod: 52126
Sökbar för utbytesstudenter: Ja
Blockschema: C
Max antal deltagare: 120

Modul   Poängfördelning   Tentamensdatum
Lp1 Lp2 Lp3 Lp4 Sommarkurs Ej Lp
0111 Laboration 3,0 hp Betygskala: UG   3,0 hp    
0211 Tentamen 4,5 hp Betygskala: TH   4,5 hp   16 Jan 2021 fm L   08 Apr 2021 em J

I program

TKITE INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
TKITE INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 2 (valbar)
MPALG DATAVETENSKAP - ALGORITMER, PROGRAMSPRÅK OCH LOGIK, MASTERPROGRAM, Årskurs 2 (valbar)
MPALG DATAVETENSKAP - ALGORITMER, PROGRAMSPRÅK OCH LOGIK, MASTERPROGRAM, Årskurs 1 (valbar)
TIDAL DATATEKNIK, HÖGSKOLEINGENJÖR - Allmän, Årskurs 3 (obligatoriskt valbar)
MPCSN DATORER, NÄTVERK OCH SYSTEM, MASTERPROGRAM, Årskurs 1 (valbar)
MPCSN DATORER, NÄTVERK OCH SYSTEM, MASTERPROGRAM, Årskurs 2 (valbar)

Examinator:

David Sands

  Gå till kurshemsida


Behörighet

Grundläggande behörighet för grundnivå
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

Särskild behörighet

Samma behörighet som det kursägande programmet.
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

Kursspecifika förkunskaper

Kursen förutsätter tidigare programmeringserfarenhet och grundläggande kunskaper om datastrukturer och algoritmer. Kursen får inte inkluderas i en examen som innehåller (eller som är baserad på en annan examen som innehåller) antingen kursen TDA555 (Introduktion till funktionell programmering) eller kursen TDA451 (Functional programming).

Syfte

Den här kursen introducerar ett funktionellt programmeringsspråk och relaterade koncept för studenter som redan har en del kunskap inom programmering. Det främsta målet är att göra det möjligt för studenterna att skriva realistiska (små till mellanstora) program, och att samtidigt introducera några grundläggande koncept inom datavetenskap.

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

- skriva små till mellanstora funktionella program inom olika tillämpningar,
- utnyttja olika programmeringstekniker som är vanliga inom funktionell programmering såsom: användandet av rekursion,
modellering med rekursiva datatyper, abstraktion och kodåteranvändning med hjälp av högre ordningens funktioner och monader,
- värdera styrkorna och möjliga svagheter inom det funktionella programmeringsparadigmet.

Innehåll

I den här kurser kommer studenten att lära sig om funktionell programmering genom programmeringsspråket Haskell. Exempel på ämnen som bemöts i kursen är:
- funktioner som första klassens värden
- datastrukturer (listor, tupler, användardefinierade datatyper)
- rekursion och rekursiva datatyper
- polymorfi och typklasser
- rena funktioner vs input-output
- moduler och abstrakta datatyper
- testning av funktionella program
- lat evaluering och oändliga objekt
- monader

Organisation


Undervisningen består av föreläsningar och självstudieövningar, med möjlighet till hjälp online och vid utsatta kontorsbesökstider.

Litteratur

Se kursens webbsida.

Examination inklusive obligatoriska moment

Skriftlig examination och obligatoriska labbar.


Sidansvarig Publicerad: on 24 jan 2018.