Functional Programming

Course
DIT143
Bachelor’s level
7.5 credits (ECTS)
Study pace
50%
Time
Day
Location
Göteborg
Language
English
Duration
-
Part of semester
Quarter 3 to 4

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

This course is open to

Exchange students at the Department of computer science and Engineering and exchange students at university-wide agreements. Please contact your international coordinator the University of Gothenburg if you need to know more.

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.

English proficiency

If you have questions about English proficiency requirements, please contact your international coordinator at the University of Gothenburg.

Application

Do you want to apply for exchange studies at the University of Gothenburg?

Read more on the page Apply for exchange studies