Fortgeschrittene funktionale Programmierung
LVA 185.A05, VU 2.0, ECTS 3.0, 2012 S

(zweistŁndige Vorlesung mit Übung; siehe auch TISS/185.A05)


Are you interested in studying abroad and getting funding for this?

Information on funding opportunities is available here.


Course Meetings


The electronic course management system for registration is open until 25 March 2012.

Subject and Aim

The course is concerned with advanced concepts and principles of functional programming and their applications, which the participants shall learn and conceive in depth and to use and apply competently and adequately in known as well as in new application scenarios. The lecture part of the course stretches from functional programming principles to quality assurance, advanced languages concepts, and applications. Regularly assigned exercises of the tutorial part of the course provide the opportunity of an hands-on experience of applying the concepts and principles to problems of suitable kind, size and complexity to deepen their understanding in theory and practice.

Related Course:

A perfect add-on this term is to attend also the complementary course on:

Previous Knowledge

Basic knowledge of the functional programming style as imparted e.g. in the course LVA 185.A03 Funktionale Programmierung is mandatory.

Examination and Final Grade

The final grade is composed of the grades of the weekly assignments (50%) and the grade of the final oral examination (50%). The final oral examinations will be by appointment, essentially any time. Please make an appointment by e-mail or phone.

Course Materials

Documents for the lecture and tutorial part of the course are provided below.

Hints and remarks
Lecture Notes Chap. 1 thru Chap. 17, Bibliography, Appendix pdf
Latest update: 30.06.2012.
organizational issues
Latest update: 08.03.2012.
Joint Courses Pre-Meeting
Motivation pdf  
Latest update: 07.03.2012.


Due date/2nd due date
Hints and remarks
Tue, 05.06.2012 None. Assignment 9
Keine Abgabe; freies Üben.
Wed, 16.05.2012 Wed, 30.05.2012 (12:00) /
Wed, 06.06.2012 (20:00)
Assignment 8
Wed, 16.05.2012 Wed, 23.05.2012 (12:00) /
Wed, 30.05.2012 (20:00)
Assignment 7
Wed, 09.05.2012 Wed, 16.05.2012 (12:00) /
Wed, 23.05.2012 (20:00)
Assignment 6
(1) Prologue: Symbol "/" for integer division replaced by symbol "./."

(2) Exercise 2, 3rd illustrating example: yield array (1,3) [(1,1),(2,2),(3,3)] 0 ->> ...: Missing result "array (1,2) [(1,(*)),(2,div)]" added; missing brackets "[]" added; "div" used instead of "/".

(3) Exercise 3: Start hugs using the command "hugs -98 +o" or "runhugs -X-98 +o" and add "{-# LANGUAGE FlexibleInstances #-}" in the source program.

The pdf-file is updated accordingly. (12/05/2012)

Mon, 30.04.2012 Wed, 16.05.2012 (12:00) /
Wed, 23.05.2012 (12:00)
Assignment 5
Replace hyphen by underscore in the identifiers mi-indiv, mi-solve, etc., i.e. use mi_indiv, mi_solve, etc. (05/07/2012)

Abgabe verlängert wegen Hardware-Ausfalls der g0 (05/09/12)

Wed, 25.04.2012 Wed, 02.05.2012 (12:00) /
Wed, 16.05.2012 (12:00)
Assignment 4
Implement the ADTs Stack and Table and their operations as ordinary types and operations within AufgabeFFP4.hs, since there is no support for declaring more than one module per file (04/30/2012)

Abgabe verlängert wegen Hardware-Ausfalls der g0 (05/09/12)

Wed, 18.04.2012 Wed, 25.04.2012 (12:00) /
Wed, 02.05.2012 (12:00)
Assignment 3
Changed call context for part 1. (04/20/2012)
Sat, 24.03.2012 Wed, 18.04.2012 (12:00) /
Wed, 25.04.2012 (12:00)
Assignment 2
Tue, 20.03.2012 Wed, 28.03.2012 (12:00) /
Wed, 18.04.2012 (12:00)
Assignment 1 Submitting assignments: home directory of group account.
Signature fibdiags: [[Integer]] (not Integer -> [[Integer]]


Jens Knoop, Tel.: 58801-18510, E-mail:
wiederholte LVAs:
Fortg. fkt. Programmierung
Analyse u. Verifikation
voriges Semester
voriges Jahr
top | HTML 4.01 | Datenschutzerklärung | last update: 2018-05-28 (Knoop)