Breadcrumb

Functional Programming

Course
DIT143
Bachelor’s level
7.5 credits (ECTS)
Study pace
50%
Time
Day
Location
Göteborg
Study form
Campus
Language
English
Duration
-
Application period
-
Application code
GU-86073
Tuition
Full education cost: 17 753 SEK
First payment: 17 753 SEK

No fees are charged for EU and EEA citizens, Swedish residence permit holders and exchange students.

More information about tuition fees

Application closed, late application opens 15 July 2025.

About

This course introduces a functional programming language and related concepts to students that already have some knowledge in programming. The primary goal is to make it possible for students to apply the functional approach to write realistic (small to medium-sized) programs, and transfer general programming skills to the functional programming domain.

Concrete topics encountered in the course include;

  • functions as first-class values
  • compound data types (lists, tuples, and user-defined types)
  • recursion and recursive data types
  • using abstraction to avoid repetitive programming
  • algebraic data types
  • polymorphism and type classes
  • time complexity: efficient and inefficient functional programs
  • pure functions vs input-output
  • modules and abstract data types
  • testing functional programs
  • lazy evaluation and infinite objects
  • monads

Prerequisites and selection

Entry requirements

To be eligible for this course, students must have successfully completed a 7.5 credits course in programming in a paradigm other than functional, e.g., DIT948 Programming, DIT042 Object-Oriented Programming, MVG300 Programming in Matlab, or equivalent.



Applicants must prove knowledge of English: English 6/English B or the equivalent level of an internationally recognized test, for example TOEFL, IELTS.

Selection

Selection is based upon the number of credits from previous university studies, maximum 165 credits.