SoSe 22: ProInformatik II: Funktionale Programmierung
Kristin Knorr
Zusätzl. Angaben / Voraussetzungen
Kommentar
Inhalte
Studentinnen und Studenten erlernen die Grundlagen des Programmierens im Kleinen.
Es werden die Grundlagen der Berechenbarkeit (Lambda-Kalkül, primitive Rekursion, Fixpunkte), eine Einführung in die Theorie der Programmiersprachen (Syntax (Backus-Naur-Form), operationale Semantik, Daten und Programm) gegeben.
Es werden Konzepte funktionaler Programmierung (z. B. elementare Datentypen, Ausdrücke, Funktionsdefinition, Rekursion, Funktionsabstraktion, Closure, Funktionen höherer Ordnung, universelle Polymorphie) und deren Ausführung (Auswertungsstrategien) eingeführt. Es werden Techniken zum Beweisen von Programmeigenschaften (Termersetzung, strukturelle Induktion, Terminierung, Church-Rosser-Theorem) und deren Anwendungen (Typsysteme, Typherleitung und Typüberprüfung) eingeführt.
Grundlegende Abstraktionen wie algebraische und abstrakte Datentypen und modularer Programmentwurf, sowie Nebenwirkungen (z. B. durch Monaden) anhand von Ein- und Ausgabe werden behandelt.
SchließenLiteraturhinweise
- Simon Thompson: Haskell: The Craft of Functional Programming, Third Edition, Addison-Wesley, 2011.
- Graham Hutton: Programming in Haskell, Cambridge University Press, 2007
- Bird, R./Wadler, Ph.: Einführung in Funktionale Programmierung, Hanser Verlag, 1982.
- Hans Hermes: Aufzählbarkeit, Entscheidbarkeit, Berechenbarkeit, Springer-Verlag, 1978.
28 Termine
Zusätzliche Termine
Fr, 30.09.2022 09:00 - 12:00
Räume:
T9/SR 005 Übungsraum (Takustr. 9)
Regelmäßige Termine der Lehrveranstaltung
Räume:
T9/049 Seminarraum (Takustr. 9)
Räume:
T9/049 Seminarraum (Takustr. 9)
Räume:
T9/049 Seminarraum (Takustr. 9)
Inhalte
Studentinnen und Studenten erlernen die Grundlagen des Programmierens im Kleinen. Es werden die Grundlagen der Berechenbarkeit (Lambda-Kalkül, primitive Rekursion, Fixpunkte), ... Lesen Sie weiter