Inhalte: Studierende erlernen und üben die Grundlagen der Funktionalen Programmierung. Sie lernen Listengeneratoren, Funktionen höherer Ordnung und algebraische Datentypen kennen und üben deren praktische Anwendung. Da-rüber hinaus erarbeiten sie sich Funktionen höherer Ordnung und weitere Funktionale Konzepte (z.B. Monaden, Funktoren) und wenden diese an. Zudem erarbeiten sie sich die Grundlagen der Analyse von Funktionalen Pro-grammen. Zuletzt diskutieren sie die Möglichkeiten der Interaktion in Funktionaler Programmierung und erlernen Funktionale Datentypen und üben deren praktische Anwendung.