Main content
This entry is from Winter semester 2019/20 and might be obsolete. No current equivalent could be found.
CS 553 — Parallel Functional Programming
(dt. Parallele funktionale Programmierung)
Level, degree of commitment | Specialization module, compulsory elective module |
Forms of teaching and learning, workload |
Lecture (4 SWS), recitation class (2 SWS), 270 hours (90 h attendance, 180 h private study) |
Credit points, formal requirements |
9 CP Course requirement(s): Successful completion of at least 50 percent of the points from the weekly exercises as well as at least 2 presentations of the tasks. Examination type: Oral or written examination |
Language, Grading |
German,The grading is done with 0 to 15 points according to the examination regulations for the degree program M.Sc. Computer Science. |
Duration, frequency |
One semester, Regelmäßig alle 3 bis 4 Semester |
Person in charge of the module's outline | Prof. Dr. Rita Loogen |
Contents
Basic Terms and Classification of Parallel Haskell Extensions
Characteristics and properties of functional languages, Haskell core
strictness analysis
Controlled parallelism: combinators par/pseq, evaluation strategies, threaded RTS
Process control languages: Eden, Par-Monad - Algorithmic Skeletons
Explicit Parallelism: Haskell_MPI
Data parallelism/parallel array programming: Repa
Concurrency: Concurrent Haskell
Distributed programming in Haskell: Cloud Haskell
Qualification Goals
- Learning different methods to analyse, treat and express parallelism in functional languages,
- Writing and analysing parallel functional programs in different languages or language extensions,
- Analysing underlying implementation techniques,
- Practicing scientific working methods (recognition, formulation, solving problems, training of abstraction skills),
- Training oral communication skills in the exercises by practicing free speech in front of an audience and during discussion
Prerequisites
None. The competences taught in the following module are recommended: Declarative Programming.
Applicability
Module imported from M.Sc. Computer Science.
It can be attended at FB12 in study program(s)
- B.Sc. Computer Science
- M.Sc. Data Science
- M.Sc. Computer Science
- M.Sc. Mathematics
- M.Sc. Business Mathematics
- LAaG Computer Science
When studying LAaG Computer Science, this module can be attended in the study area Specialization Modules.
Recommended Reading
- Kevin Hammond, Greg Michaelson: Research Directions in Parallel Functional Programming, Springer Verlag 1999.
Please note:
This page describes a module according to the latest valid module guide in Winter semester 2019/20. Most rules valid for a module are not covered by the examination regulations and can therefore be updated on a semesterly basis. The following versions are available in the online module guide:
- Winter 2016/17
- Summer 2018
- Winter 2018/19
- Winter 2019/20
- Winter 2020/21
- Summer 2021
- Winter 2021/22
- Winter 2022/23
- Winter 2023/24 (no corresponding element)
The module guide contains all modules, independent of the current event offer. Please compare the current course catalogue in Marvin.
The information in this online module guide was created automatically. Legally binding is only the information in the examination regulations (Prüfungsordnung). If you notice any discrepancies or errors, we would be grateful for any advice.