Summer semester 2023
The content on this page was translated automatically.
The entire organization of the courses takes place via the Moodle learning platform. If you would like to take part in one of the courses listed below, please register for the relevant Moodle course.
In this course, students learn functional programming using the Haskell language as an example. The language constructs covered range from basics such as functions and lists, data types and evaluation strategies to advanced aspects such as monads and parallelization. The constructs are explained and their use discussed. In addition to Haskell, a brief insight into other functional languages will be given.
The course is held in the form of a lecture with integrated exercises. In the first few weeks, homework is also compulsory. Grades are awarded on the basis of project work, which is carried out in teams of two in the final weeks. The project work is concluded with a defense in which the developed programs are presented and other topics from the lecture are addressed.
Study program
Bachelor Computer Science
Scope
4 SWS (6 credits)
Further information, including the course dates, can be found in the course catalog and in the Moodle course. If you have any questions, Prof. Dr. Claudia Fohry and M.Sc. Rüdiger Nather will be happy to answer them.
C++ is a programming language with an extensive and growing range of language constructs. These serve to support object-oriented, generic and concurrent programming, the combination of performance and comprehensibility of the code and similar goals. In this seminar, we will look at specific features that C++ offers.
The participants will present one topic each, which they will learn from the C++ documentation, possibly supplemented by books. Example topics are basic constructs (e.g. templates, lambdas), new features introduced in recent years (e.g. concepts, coroutines) and features planned for the upcoming C++23 standard (e.g. stacktraces). Own topics can be introduced by arrangement.
Prerequisite
Completed module Lab C/Embedded Systems. Previous experience with C++ is not necessary.
Study program
Bachelor and Master Computer Science
Scope
Bachelor 2 SWS (3/4 credits)
Master 2 SWS (4 credits)
Further information, including course dates, can be found in the Bachelor's course catalog and Master's course catalog as well as in the Moodle course. If you have any questions, Prof. Dr. Claudia Fohry and M.Sc. Rüdiger Nather will be happy to answer them.
In this project, the participants implement two to three benchmarks from parallel programming in small groups. The benchmarks are to be implemented using the C++ standard library, in particular with Promises and Futures.
The requirements for the participants include the algorithmic adaptation of the benchmarks, their implementation and testing on the cluster of the University of Kassel. At the end, all groups present their results and experiences.
Prerequisite
Completed module Lab C/Embedded Systems. Previous experience with C++ is helpful, but not necessary.
Study program
Bachelor and Master Computer Science
Scope
Bachelor 8 SWS (12 credits)
Master 4 SWS (8 credits)
Further information, including course dates, can be found in the Bachelor's course catalog and Master's course catalog as well as in the Moodle course. If you have any questions, Prof. Dr. Claudia Fohry and M.Sc. Rüdiger Nather will be happy to answer them.
The laboratory practical course "Building a miniature supercomputer" is a practical introduction to the world of supercomputing and is intended to give students an understanding of the concepts and technologies of high-performance computing (HPC).
At the beginning of the lab practical, students are taught the basics, such as how a supercomputer works, benchmarking, job scheduling, distributed file systems, resource management, user management, fault tolerance and elasticity. The aim is to provide students with the concepts and skills required to build a supercomputer.
In the main part of the lab practical, students work in groups and build their own miniature supercomputer using virtualization technologies. Students apply their acquired skills and knowledge in practice by evaluating the performance of their miniature supercomputer in various practical scenarios.
The results of the group work are presented in examination talks and form the basis for the assessment of the course.
Study program
Bachelor Computer Science
Scope
4 SWS (6 credits)
Further information, including the course dates, can be found in the course catalog and in the Moodle course. If you have any questions, Dr. Jonas Posner will be happy to answer them.