Module Number

INF3187
Module Title

Effective Programming with Effects
Type of Module

Elective Compulsory
ECTS 6
Work load
- Contact time
- Self study
Workload:
180 h
Class time:
60 h / 4 SWS
Self study:
120 h
Duration 1 Semester
Frequency Irregular
Language of instruction English
Type of Exam

Grading of the practical project

Lecture type(s) Practical Course
Content

The aim of this practical course is to get to know programming with algebraic effects and handlers. Effect systems support the development of correct software, effect handling enables a meaningful structuring of complex control flow. During the practical course, students program in the “Effect” research language developed at the chair. However, the concepts learned are universally applicable and can be used to structure programs regardless of the programming language used and thus serve, for example, as a mental model for common libraries such as “React” or “Pyro”.

The first part of the semester focuses on understanding the various aspects of algebraic effects and handlers through practical programming tasks. Students then choose a topic in consultation with the organizer and independently develop a software project in the second part of the semester, applying their acquired knowledge in realistic scenarios.

Important note:
Students who would like to take this practical course should have completed the following courses in advance:
- INFM1110 Praktische Informatik 1: Deklarative Programmierung
- INFM1120 Praktische Informatik 2: Imperative und objektorientierte Programmierung
- INFM2111 Praktische Informatik 3: Software Engineering

Objectives

Participants will gain a comprehensive understanding of the theoretical foundations and practical implications of effects and handlers. They will develop the ability to use these concepts effectively to design and implement software solutions. In addition, participants will improve their communication skills by formulating solutions and participating in discussions about the application and implications of effects and handlers.

Allocation of credits / grading
Type of Class
Status
SWS
Credits
Type of Exam
Exam duration
Evaluation
Calculation
of Module (%)
Prerequisite for participation There are no specific prerequisites.
Lecturer / Other Brachthäuser
Literature

-

Last offered unknown
Planned for Wintersemester 2024
Assigned Study Areas BIOINFM2510, INFM2510, INFM3110, MDZINFM2510, MEINFM3210