Bachelor Course on Concurrency
Please contact Ivo Gabe de Wolff <i.g.dewolff@uu.nl> for any enquiry about the course, mentioning [INFOB3CC] in the subject.
Teaching objectives
By the end of the course you will be able to:
- Design and implement a multithreaded application in Haskell, using
techniques and concepts such as:
- Managing threads
- Synchronise with locks, semaphores, etc.
- Data-flow parallelism
- Data-parallelism
-
Understand the difference between concurrency and parallelism and where techniques for each can be applied to solve problems
-
Calculate the complexity (work and span) of parallel algorithms
- Reason about the properties of a concurrent algorithm