Functional Programming I
Course, Master's level, 1DL330
Expand the information below to show details on how to apply and entry requirements.
Autumn 2025
Autumn 2025,
Uppsala, 33%, On-campus, English
- Location
- Uppsala
- Pace of study
- 33%
- Teaching form
- On-campus
- Instructional time
- Daytime
- Study period
- 1 September 2025–2 November 2025
- Language of instruction
- English
- Entry requirements
-
120 credits with a second course in computer programming. 15 credits in mathematics, including basic algebra. Proficiency in English equivalent to the Swedish upper secondary course English 6.
- Selection
-
Higher education credits in science and engineering (maximum 240 credits)
- Fees
-
If you are not a citizen of a European Union (EU) or European Economic Area (EEA) country, or Switzerland, you are required to pay application and tuition fees.
- First tuition fee instalment: SEK 12,083
- Total tuition fee: SEK 12,083
- Application deadline
- 15 April 2025
- Application code
- UU-11006
Admitted or on the waiting list?
- Registration period
- 25 July 2025–7 September 2025
- Information on registration from the department
Autumn 2025
Autumn 2025,
Uppsala, 33%, On-campus, English
For exchange students
- Location
- Uppsala
- Pace of study
- 33%
- Teaching form
- On-campus
- Instructional time
- Daytime
- Study period
- 1 September 2025–2 November 2025
- Language of instruction
- English
- Entry requirements
-
120 credits with a second course in computer programming. 15 credits in mathematics, including basic algebra. Proficiency in English equivalent to the Swedish upper secondary course English 6.
Admitted or on the waiting list?
- Registration period
- 25 July 2025–7 September 2025
- Information on registration from the department
Autumn 2025
Autumn 2025,
Flexible, 33%, Distance learning, English
The course is cancelled.
- Location
- Flexible
- Pace of study
- 33%
- Teaching form
- Distance learning
- Number of mandatory on-campus meetings
- 0
- Number of optional on-campus meetings
- 0
- Instructional time
- Daytime
- Study period
- 1 September 2025–2 November 2025
- Language of instruction
- English
- Entry requirements
-
120 credits with a second course in computer programming. 15 credits in mathematics, including basic algebra. Proficiency in English equivalent to the Swedish upper secondary course English 6.
- Selection
-
Higher education credits in science and engineering (maximum 240 credits)
- Fees
-
If you are not a citizen of a European Union (EU) or European Economic Area (EEA) country, or Switzerland, you are required to pay application and tuition fees.
- First tuition fee instalment: SEK 12,083
- Total tuition fee: SEK 12,083
- Application code
- UU-11044
About the course
Functional programming is an approach to declarative programming. The aim is for the programmer to state only the problem, but not a sequence of steps to solve it. In functional programming, the programmer does this by defining a (mathematical) function. Declarative programming is thus very different from imperative programming and object-oriented programming, where a program is basically a sequence of steps. Come and widen your programming-language horizon. Declarative programming is not difficult and leads often to very elegant programs, once you are used to it!
The main objective is to learn functional programming and to see how well it realises the aim of declarative programming. Functional programming is successfully used in many industrial projects, which makes knowledge of it a useful asset in the job market. Improvements in programming quality and speed by several factors are not uncommon.
The course covers theoretical foundations as well as practical programming exercises in Haskell. You also learn when it is wiser to use declarative programming rather than imperative programming or object-oriented programming.
Outline for distance course: The course is completely web-based and teaching takes place via the internet. The entire course with course materials and assignments as well as teacher guidance is available on the web.