Add to watchlist
Back

 

64451-01 - Seminar: Programmieren mit Monaden 6 CP

Semester spring semester 2022
Course frequency Irregular
Lecturers Marcel Lüthi (marcel.luethi@unibas.ch, Assessor)
Christian Tschudin (christian.tschudin@unibas.ch)
Content «Monads are just monoids in the category of endofunctors. What's the
problem?»

In diesem Seminar untersuchen wir das mathematische Konzept der Monaden aus Sicht der funktionalen Programmierung. Wir diskutieren, wie wir Monaden nutzen können um Zustandsänderungen und Seiteneffekte in Programmen zu kontrollieren, effektive Fehlerbehandlung zu implementieren, oder nebenläufige Systeme zu entwickeln. In Projekten werden die Teilnehmenden weitere Anwendungsfälle von Monaden, von Parsergeneratoren bis hin zu Probabilistischer Programmierung, selber erarbeiten.

Monaden haben sich als allgemein anerkanntes Konzept in der Informatik etabliert. Einerseits sind sie ein zentrales Element der funktionalen Programmiersprachen Haskell und Scala, das Konzept findest sich aber auch in populären Programmiersprachen wie C# oder Kotlin.
Learning objectives Die Studierenden
• erlangen vertieftes Verständnis der Funktionalen Programmierung
• erarbeiten die Bedeutung der Monaden als funktionales Design Pattern für
○ Fehlerbehandlung
○ Input/Output
○ Netzwerkprogrammierung
○ Nebenläufigkeit
• machen konkrete Programmiererfahrung mit monadischem Programmierstil
Bibliography The book of monads: https://leanpub.com/book-of-monads

 

Admission requirements • Erweiterte Grundlagen der Programmierung und/oder Algorithmen und Datenstrukturen
• Programmierparadigmen (Annahme: Viele Studierende, Nutzen von Wissen zu funktionaler Programmierung)

• Registrierung via Mona: https://services.unibas.ch/unibas/
• Die Anzahl Teilnehmende ist auf 20 limitiert. Bitte schreiben Sie zusätzlich zu Ihrer Anmeldung auf Mona eine E-Mail an marcel.luethi@unibas.ch um sich für einen der Plätze zu registrieren.

Language of instruction German
Use of digital media No specific media used

 

Interval Weekday Time Room
wöchentlich Friday 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003

Dates

Date Time Room
Friday 25.02.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 04.03.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 11.03.2022 14.15-16.00 Fasnachtsferien
Friday 18.03.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 25.03.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 01.04.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 08.04.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 15.04.2022 14.15-16.00 Ostern
Friday 22.04.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 29.04.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 06.05.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 13.05.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 20.05.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Friday 27.05.2022 14.15-16.00 Auffahrt
Friday 03.06.2022 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003
Modules Modul: Applications and Related Topics (Bachelor's degree subject: Computer Science)
Module: Applications and Related Topics (Bachelor's Studies: Computer Science)
Assessment format continuous assessment
Assessment details Die Schlussnote wird aus der Note einer Präsentation sowie den Noten für die Implementierungsprojekte zusammengesetzt.
Assessment registration/deregistration Reg.: course registration, dereg: cancel course registration
Repeat examination no repeat examination
Scale 1-6 0,5
Repeated registration as often as necessary
Responsible faculty Faculty of Science, studiendekanat-philnat@unibas.ch
Offered by Fachbereich Informatik

Back