Kursplan för läsåret 2008/2009
(Genererad 2008-07-17.)
FUNKTIONSPROGRAMMERINGEDA120
Functional Programming

Antal högskolepoäng: 6. Betygskala: TH. Nivå: G2 (Grundnivå, fördjupad). Undervisningsspråk: Kursen kan komma att ges på engelska. Valfri för: D3, D3ps, E4, F4, Pi4. Kursansvarig: Univ.lektor Lennart Ohlsson, Lennart.Ohlsson@cs.lth.se, Inst f datavetenskap. Förkunskapskrav: EDA027 Algoritmer och datastrukturer eller EDAA01 Programmeringsteknik - fördjupningskurs. Förutsatta förkunskaper: FMA410, FMA420 och FMA430. Prestationsbedömning: För betyg 3 krävs godkänt på samtliga inlämningsuppgifter. Högre betyg kan erhållas med skriftlig tentamen. Fullgjorda inlämningsuppgifter är krav för att få deltaga i tentamen. Inlämningsuppgifterna kan endast redovisas under pågående kurs. Hemsida: http://www.cs.lth.se/EDA120.

Syfte
Kursen ger insikt i hur den funktionsorienterande programmeringsparadigmen ofta ger möjlighet att skriva program som är både kortare och lättare att förstå än med traditionell imperativ och objektorienterad programmering.

Mål

Kunskap och förståelse
För godkänd kurs skall studenten

Färdighet och förmåga
För godkänd kurs skall studenten

Värderingsförmåga och förhållningssätt
För godkänd kurs skall studenten

Innehåll
Funktionsspråkens filosofi och möjligheter. Programspråket Haskell. Funktionella språkkonstruktioner och idiom. Högre ordningens funktioner. Lat evaluering och oändliga datastrukturer. Monader. Polymorfa typsystem och typklasser.

Litteratur
Webbaserat material. Rekommenderad referenslitteratur: Thompson, S: Haskell - The Craft of Functional Programming. 2nd edition. Addison-Wesley 1999. ISBN: 0-201-34275-8.