Hauptinhalt
Dieser Eintrag ist aus dem Wintersemester 2021/22 und möglicherweise veraltet. Ein aktuelles Äquivalent finden Sie hier.
CS 310 — Deklarative Programmierung
(engl. Declarative Programming)
Niveaustufe, Verpflichtungsgrad | Basismodul, abhängig vom importierenden Studiengang |
Lehr- und Lernformen, Arbeitsaufwand |
Vorlesung (4 SWS), Übung (2 SWS), 270 Stunden (90 Std. Präsenzzeit, 180 Std. Selbststudium) |
Leistungspunkte, Voraussetzungen zum Erwerb |
9 LP Studienleistung(en): Erreichen von mindestens 50 Prozent der Punkte aus den wöchentlich zu bearbeitenden Übungsaufgaben und mündliche Präsentation der Lösung von mindestens zwei der Übungsaufgaben. Prüfungsleistung: Klausur |
Sprache, Benotung |
Deutsch,Die Benotung erfolgt mit 0 bis 15 Punkten gemäß der Prüfungsordnung für den Studiengang B.Sc. Informatik. |
Exportfach, Ursprung | Informatik, B.Sc. Informatik |
Dauer des Moduls, Häufigkeit |
Ein Semester, Jedes Sommersemester |
Modulverantwortliche(r) | Prof. Dr. Christoph Bockisch |
Inhalt
Einführung in deklarative Programmierung: Grundlegende Konzepte, Programmiermethodik, Formale Grundlagen, d.h. Rekursive Funktionsgleichungen, Reduktionssemantik/Reduktionsstrategien, Algebraische Datenstrukturen, Pattern Matching, Polymorphe Typsysteme, Typinferenz, Funktionen höherer Ordnung, Interaktive Ein-/Ausgabe, Nachweis von Programmeigenschaften (Equational Reasoning, Induktionstechniken), Lambda-Kalkül
Qualifikationsziele
- Erlernen einer deklarativen Programmiersprache,
- Erkennen und Anwendung von Abstraktion bei der Programmentwicklung,
- Unterscheidung verschiedener Programmierparadigmen und ihrer Anwendungsbereiche,
- Kenntnisse in Testen und Verifikation von Programmen,
- Mathematische Grundlagen der deklarativen Programmierung,
- Einüben wissenschaftlicher Arbeitsweisen (Erkennen, Formulieren, Lösen von Problemen, Schulung des Abstraktionsvermögens),
- Training der mündlichen Kommunikationsfähigkeit in den Übungen durch Einüben der freien Rede vor einem Publikum und bei der Diskussion.
Voraussetzungen
Keine.
Literatur
- Richard Bird: Thinking Functionally with Haskell, Cambridge University Press, Dec. 2014
- S. Thompson: Haskell – The Craft of Functional Programming, Addison-Wesley 1999;
- bzw.
- M. Felleisen, R. B. Findler, M. Flatt, S. Krishnamurthi: How to Design Programs, Second Edition, MIT Press 2014
- bzw.
- L.Sterling, E.Shapiro: The Art of Prolog, MIT Press 1994
- Weitere Literatur wird in der Veranstaltung bekanntgegeben.
Bitte beachten Sie:
Diese Seite beschreibt ein Modul gemäß dem im Wintersemester 2021/22 aktuellsten gültigen Modulhandbuch. Die meisten für ein Modul gültigen Regeln werden nicht durch die Prüfungsordnung festgelegt, und können daher von Semester zu Semester aktualisiert werden. Folgende Versionen liegen im Online-Modulhandbuch vor:
- WiSe 2016/17
- SoSe 2018
- WiSe 2018/19
- WiSe 2019/20
- WiSe 2020/21
- SoSe 2021
- WiSe 2021/22
- WiSe 2022/23
- WiSe 2023/24
Das Modulhandbuch enthält alle Module, unabhängig vom aktuellen Veranstaltungsangebot, vergleichen Sie dazu bitte das aktuelle Vorlesungsverzeichnis in Marvin.
Die Angaben im Online-Modulhandbuch wurden automatisch erstellt. Rechtsverbindlich sind die Angaben der Prüfungsordnung. Wenn Ihnen Unstimmigkeiten oder Fehler auffallen, sind wir für Hinweise dankbar.