TIPLP — Programming Language Paradigms

Course Parameters

Language of Instruction
Level of course
Graduate course
Q4 — Spring 2013
Hours per week

Objectives of the Course

The participants will after the course be familiar with the main paradigms of programming languages: imperative, functional and logic programming. The course aims to convey knowledge onf the principles underlying the paradigms as well as practical issues such as multi-paradigm programming.

Learning outcomes and competences

The participants must at the end of the course be able to:

Course contents

This course gives an overview of the major programming language paradigms focusing on functional and logic programming. It introduces the students to principleal and practical aspects of the paradigms. The course illustrates the use of multi-paradigm programming for combing the strengths of different paradigms. More advanced topics such as concurrency and domain-specific languages will be introduced.

Recommended Prerequisites

Practical programming skills in an imperative programming language (C, Java, etc.)


Joey W. Coleman and Stefan Hallerstede

Type of course / Teaching methods

Lectures/exercises (4h/week)


To be announced — primary resources will be online

Course Homepage



Mandatory hand-ins during the course in order to be able to qualify for the exam. Oral exam (20 min) without preparation. An overall grade by use of 7-scale, external examiner.