teaching

Teaching coures

Functioneel programmeren (C003775)

The course on functional programming teaches second year students the concepts of pure functional programming. Unlike imperative programming languages the main programming abstraction of (pure) functional programming language are functions and function composition. In imperative programming languages the focus is on loops, conditionals and how to transform state while with functional programming the focus is on function calls and recursion. The main language used in this course is Haskell.

Logisch programmeren (C003783)

After being exposed to imperative and functional programming students are thaught logic programming. Unlike imperative and functional programming the focus of logic programming is to describe the problem in such a way that a logic inference engine can be used in order to search for solutions. The main language used in this course is Prolog.

Software Engineering Lab 1 (C003780)

This course is the first in a series of Software Engineering labs, in which students get acquainted with important concepts and principles in the Software Engineering discipline, through the use of a specific platform. For this course, the focus is on mobile platforms, and in this context considerable emphasis is put on the development of a mobile application, based on the Software Engineering principles introduced.

Fundamenten van programmeertalen (C003241)

Foundations of programming languages is master level course where students are thought the basics of formal semantics, type systems and Hoare logic on various variations of the lambda calculus.
The main objective of the course is to introduce student to the formal study of programming language and the mathematical techniques used for that purpose.