ALP 1: Unterschied zwischen den Versionen
Lus (Diskussion | Beiträge) K (Studienordnung hat sich geändert) |
Lus (Diskussion | Beiträge) K (typo) |
||
Zeile 1: | Zeile 1: | ||
'''Diese Seite bezieht sich auf das Modul "Funktionale Programmierung" nach der [http://www.fu-berlin.de/service/zuvdocs/amtsblatt/2007/ab062007.pdf Studien- und Prüfungsordnung vom 8.2.2007].''' | '''Diese Seite bezieht sich auf das Modul "Funktionale Programmierung" nach der [http://www.fu-berlin.de/service/zuvdocs/amtsblatt/2007/ab062007.pdf Studien- und Prüfungsordnung vom 8.2.2007].''' | ||
==Qualifikationsziele | ==Qualifikationsziele== | ||
Die Studentinnen und Studenten sind in der Lage, elementare Algorithmen funktional zu entwerfen, Anforderungen an funktionale Programme formal zu spezifizieren, gut strukturierte funktionale Programme zu entwickeln, funktionale Programme hinsichtlich ihres Aufwandes zu untersuchen und Eigenschaften funktionaler Programme formal zu beweisen. Sie haben ein grundlegendes Verständnis der Berechenbarkeit. | Die Studentinnen und Studenten sind in der Lage, elementare Algorithmen funktional zu entwerfen, Anforderungen an funktionale Programme formal zu spezifizieren, gut strukturierte funktionale Programme zu entwickeln, funktionale Programme hinsichtlich ihres Aufwandes zu untersuchen und Eigenschaften funktionaler Programme formal zu beweisen. Sie haben ein grundlegendes Verständnis der Berechenbarkeit. | ||
Version vom 29. Dezember 2014, 20:55 Uhr
Diese Seite bezieht sich auf das Modul "Funktionale Programmierung" nach der Studien- und Prüfungsordnung vom 8.2.2007.
Qualifikationsziele
Die Studentinnen und Studenten sind in der Lage, elementare Algorithmen funktional zu entwerfen, Anforderungen an funktionale Programme formal zu spezifizieren, gut strukturierte funktionale Programme zu entwickeln, funktionale Programme hinsichtlich ihres Aufwandes zu untersuchen und Eigenschaften funktionaler Programme formal zu beweisen. Sie haben ein grundlegendes Verständnis der Berechenbarkeit.
Stoff
Grundlagen der Berechenbarkeit
- Lambda-Kalkül
- primitive Rekursion
- µ-Rekursion
Einführung in die Funktionale Programmierung (Haskell)
- Syntax (Backus-Naur-Form)
- primitive Datentypen, Listen, Tupel, Zeichenketten
- Ausdrücke, Funktionsdefinitionen, Rekursion und Iteration
- Funktionen höherer Ordnung, Polymorphie
- Typsystem, Typherleitung und –überprüfung
- Algebraische und abstrakte Datentypen
- Ein- und Ausgabe
- Such- und Sortieralgorithmen
Beweisen von Programmeigenschaften
- Termersetzung
- strukturelle Induktion
- Terminierung
Implementierung und Programmiertechnik
- Auswertungsstrategien für funktionale Programme
- Modularer Programmentwurf
Folien
Alte Übungen
- Übungsblätter und Lösungen WiSe06/07
- Übungsblätter und Programmierbeispiele WiSe07/08
- Übungsblätter WiSe08/09
- Übungsblätter WiSe09/10
- Übungsblätter WiSe10/11