Nummer INF3212 |
Titel Funktionale Programmierung |
Art der Vorlesung Wahlpflicht |
---|---|---|
ECTS | 6 | |
Arbeitsaufwand - Kontaktzeit - Selbststudium |
Arbeitsaufwand:
180 h Kontaktzeit:
60 h / 4 SWS Selbststudium:
120 h |
|
Veranstaltungsdauer | 1 Semester | |
Häufigkeit des Angebots | Jedes Semester | |
Unterrichtssprache | Deutsch | |
Prüfungsform | Klausur + Übungsnote |
|
Lehrform(en) | Vorlesung, Übung | |
Inhalt | Diese Lehrveranstaltung nutzt die Programmiersprache Haskell, um grundlegende und praxisrelevante Konzepte der funktionalen Programmierung zu explorieren. Die ersten drei Wochen des Kurses führen die Teilnehmer in Haskell ein, danach werden weiterführende Ideen des funktionalen Paradigmas thematisiert: algebraische Datentypen; parametrische Polymorphie; Typklassen; domänenspezifische Sprachen und ihre Einbettung; Monaden; Parallelität. Das Material wird mittels Foliensatz, Tafelanschrieben und \emph{Live Coding} vermittelt. |
|
Qualifikationsziele | Die Studierenden können grundlegende und weiterführende Konzepte der funktionalen Programmierung in Haskell nachvollziehen. Die Studierenden beschreiben komplexe Datenstrukturen mit den Mitteln des Haskell-Typsystems und entwickeln selbständig Programme, um anspruchsvolle algorithmische Probleme zu lösen. Fortgeschrittene Methoden zur Abstraktion sowohl von Daten (bspw. generalisierte algebraische Datentypen) als auch von Verhalten (z.B. Monad-Transformer) können analysiert und neu geschaffen werden. Die Studierende erschließen sich den Zugang zur weiterführenden Literatur und zu Forschungsthemen in der funktionalen Programmierung. |
|
Vergabe von Leistungspunkten/Benotung |
Lehrform
Status
SWS
LP
Prüfungsform
Prüfungsdauer
Benotung
Berechnung
Modulnote (%) |
|
Teilnahmevoraussetzungen | Es gibt keine besonderen Voraussetzungen. | |
Dozent/in | Grust | |
Literatur / Sonstiges | Bird: Thinking Functionally Hutton: Programming in Haskell Bird/Wadler: Introduction to Functional Programming |
|
Zuletzt angeboten | Wintersemester 2021 | |
Geplant für | Sommersemester 2023 | |
Zugeordnete Studienbereiche | BIOINFM2510, INFM2510, INFM3110, MDZINFM2510, MEINFM3210 |