Summer semester 2023

The content on this page was translated automatically.

The entire organization of the courses is done via the learning platform Moodle. If you would like to participate in one of the events listed below, please register in the corresponding 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 to data types and evaluation strategies to advanced aspects such as monads and parallelization. The constructs are explained in each case and their use is discussed. Besides Haskell, a brief insight into other functional languages will be given.

The course will take the form of a lecture with integrated exercises. In the first weeks homework is obligatory. Grades will be awarded on the basis of a project work, which will be done in teams of two during the last weeks. The project work is concluded by a defense in which the developed programs are presented and further topics of the lecture are addressed.

Course
Bachelor Computer Science

Scope
4 SWS (6 credits)

 

Further information, including 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 set of language constructs. These serve to support object-oriented, generic and concurrent programming, to combine performance and code understandability, and similar goals. In this seminar we will deal with concrete features that C++ offers.

The participants will present one topic each, which they will learn from the documentation of C++, supplemented by books if necessary. Example topics are basic constructs (e.g. templates, lambdas), new features introduced in the last years (e.g. concepts, coroutines) and features planned for the upcoming C++23 standard (e.g. stacktraces). By arrangement, students may bring in their own topics.

Prerequisite
Completed module Lab C/Embedded Systems. Previous experience with C++ is not necessary.

Course
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 with the help of 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 will present their results and experiences.

Prerequisite
Completed module Lab C/Embedded Systems. Previous experience with C++ is helpful but not necessary.

Course
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 lab practical "Building a Miniature Supercomputer" is a practical introduction to the world of supercomputing and is designed to give students an understanding of the concepts and technologies of high-performance computing (HPC).

At the beginning of the lab practical, students will be taught the basics such as how a supercomputer works, benchmarking, job scheduling, distributed file systems, resource management, user management, fault tolerance, and elasticity. The goal is to provide students with the concepts and skills necessary 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 exam discussions and form the basis for the course evaluation.

Course
Bachelor Computer Science

Scope
4 SWS (6 credits)

 

Further information, including 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.