Zur Merkliste hinzufügen
Zurück

 

64451-01 - Seminar: Programmieren mit Monaden 6 KP

Semester Frühjahrsemester 2022
Angebotsmuster unregelmässig
Dozierende Marcel Lüthi (marcel.luethi@unibas.ch, BeurteilerIn)
Christian Tschudin (christian.tschudin@unibas.ch)
Inhalt «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.
Lernziele 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
Literatur The book of monads: https://leanpub.com/book-of-monads

 

Teilnahmebedingungen • 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.

Unterrichtssprache Deutsch
Einsatz digitaler Medien kein spezifischer Einsatz

 

Intervall Wochentag Zeit Raum
wöchentlich Freitag 14.15-16.00 Spiegelgasse 1, Seminarraum 00.003

Einzeltermine

Datum Zeit Raum
Freitag 25.02.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 04.03.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 11.03.2022 14.15-16.00 Uhr Fasnachtsferien
Freitag 18.03.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 25.03.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 01.04.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 08.04.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 15.04.2022 14.15-16.00 Uhr Ostern
Freitag 22.04.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 29.04.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 06.05.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 13.05.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 20.05.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Freitag 27.05.2022 14.15-16.00 Uhr Auffahrt
Freitag 03.06.2022 14.15-16.00 Uhr Spiegelgasse 1, Seminarraum 00.003
Module Modul: Applications and Related Topics (Bachelorstudium: Computer Science)
Modul: Applications and Related Topics (Bachelor Studienfach: Computer Science)
Leistungsüberprüfung Lehrveranst.-begleitend
Hinweise zur Leistungsüberprüfung Die Schlussnote wird aus der Note einer Präsentation sowie den Noten für die Implementierungsprojekte zusammengesetzt.
An-/Abmeldung zur Leistungsüberprüfung Anm.: Belegen Lehrveranstaltung; Abm.: stornieren
Wiederholungsprüfung keine Wiederholungsprüfung
Skala 1-6 0,5
Wiederholtes Belegen beliebig wiederholbar
Zuständige Fakultät Philosophisch-Naturwissenschaftliche Fakultät, studiendekanat-philnat@unibas.ch
Anbietende Organisationseinheit Fachbereich Informatik

Zurück