Funktionell programmering I
Kurs, Avancerad nivå, 1DL330
Fäll ut informationen nedan för att läsa mer om anmälan och behörighet.
Hösten 2026 Hösten 2026, Uppsala, 33 %, Campus, Engelska
- Studieort
- Uppsala
- Studietakt
- 33 %
- Undervisningsform
- Campus
- Undervisningstid
- Dag
- Studieperiod
- 31 augusti 2026–1 november 2026
- Undervisningsspråk
- Engelska
- Behörighet
-
120 hp med en fortsättningskurs i programmering. 15 hp matematik inklusive Grundläggande algebra. Engelska 6. (Med en svensk kandidatexamen uppfylls kravet på engelska.)
- Urval
-
Högskolepoäng inom teknik/naturvetenskap (max 240 hp)
- Avgifter
-
Du som inte är medborgare i ett EU-/EES-land eller Schweiz måste i regel betala anmälnings- och studieavgift.
- Studieavgift, första inbetalningen: 12 500 kr
- Studieavgift, totalt: 12 500 kr
- Sista anmälningsdag
- 15 april 2026
- Anmälningskod
- UU-11006
För dig som är antagen eller reserv
- Registreringsperiod
- 27 juli 2026–6 september 2026
- Institutionens information om registrering
Hösten 2026 Hösten 2026, Uppsala, 33 %, Campus, Engelska För utbytesstudenter
- Studieort
- Uppsala
- Studietakt
- 33 %
- Undervisningsform
- Campus
- Undervisningstid
- Dag
- Studieperiod
- 31 augusti 2026–1 november 2026
- Undervisningsspråk
- Engelska
- Behörighet
-
120 hp med en fortsättningskurs i programmering. 15 hp matematik inklusive Grundläggande algebra. Engelska 6. (Med en svensk kandidatexamen uppfylls kravet på engelska.)
För dig som är antagen eller reserv
- Registreringsperiod
- 27 juli 2026–6 september 2026
- Institutionens information om registrering
Om kursen
Funktionell programmering är ett programmeringsparadigm som betonar att uttrycka beräkningar genom rena funktioner, oföränderlig data och komposition snarare än stegvisa instruktioner och förändring av tillstånd. Detta synsätt underlättar resonemang om program, förbättrar testbarhet och stödjer modulär programstrukturering. Kursen introducerar dessa idéer och visar hur de skiljer sig från imperativa och objektorienterade programmeringsparadigm.
Du kommer att lära dig att tillämpa principer för funktionell programmering för att designa och implementera mjukvarusystem i ett funktionellt programspråk (till exempel Haskell). Centrala moment inkluderar funktioner, rekursion, funktioner av högre ordning, typsystem, polymorfism och rekursiva datastrukturer, med fokus på att bygga modulära och återanvändbara programkomponenter.
En central del av kursen är praktisk programmering, där du utvecklar förmågan att implementera algoritmer och datastrukturer i funktionell stil, manuellt följa programkörning samt göra typinferens för uttryck. Undervisningen bedrivs i form av flippat klassrum, laborationer och skriftliga inlämningsuppgifter—både individuella och i grupp—där du stegvis utvecklar förmågan att designa större program med tydlig struktur och abstraktion. Kursen passar studenter med tidigare programmeringserfarenhet som vill fördjupa sin förståelse för programmeringsparadigm samt stärka sin problemlösnings- och programdesignförmåga.
Litteraturlista
- Litteraturlista giltig från och med höstterminen 2022
- Litteraturlista giltig från och med höstterminen 2021
- Litteraturlista giltig från och med höstterminen 2019
- Litteraturlista giltig från och med vårterminen 2019, version 2
- Litteraturlista giltig från och med vårterminen 2019, version 1
- Litteraturlista giltig från och med höstterminen 2009