Funktionale Programmierung/Höhere Programmiersprachen (WS2015/16)
Praktische und theoretische Konzepte und Methoden funktionaler Programmiersprachen sowie Einführung in die funktionale Programmierung anhand der Programmiersprache Haskell.
Schwerpunkte sind funktionale Datenstrukturen, Typensysteme und Auswertungsstrategien.
Beginn der Vorlesung: 12.10.2015
Beginn der Übungen: 21.10.2015
Klausurtermin: 01.02.2016, 13:45-15:15 Uhr, Raum 1/204
- Ravi Sethi: Programming Languages: Concepts and Constructs, 2. Ausgabe, Addison Wesley, 2003
- Robert W. Sebesta: Concepts of Programming Languages, 9. Ausgabe, Addison Wesley, 2009
- Richard Bird: Introduction to Functional Programming using Haskell, 2. Ausgabe, Prentice Hall, 1998
- Simon Thompson: Haskell: The Craft of Functional Programming, 3. Ausgabe, Addison Wesley, 2011
- Simon L. Peyton Jones: The Implementation of Functional Programming Languages, Prentice Hall, 1987
- Glynn Winskel: The Formal Semantics of Programming Languages, MIT Press, 1993
- 1. Übungsserie, Lösung: 1–4, 4 (separat)
- 2. Übungsserie, Lösung: 1, 2, 3, 4
- 3. Übungsserie, Lösung: 1, 2, 3, 4
- 4. Übungsserie, Lösung: 1, 2, 3, 4
- 5. Übungsserie, Lösung: 1, 2
- 6. Übungsserie, Lösung: 1, 2, 3
- 7. Übungsserie, Lösung: 1, 2, 3
- 8. Übungsserie, Lösung: 1–3
- 9. Übungsserie, Lösung: 1–3
- 10. Übungsserie, Lösung: 1–2
- 11. Übungsserie, Lösung: 1–2
- 12. Übungsserie, Lösung: 1
- Einführung (Stand: 12.10.2015)
- Darstellung Syntaktischer Strukturen (Stand: 26.10.2015)
- Haskell ‐ Einleitung und grundlegende Konstrukte (Stand: 26.10.2015)
- Haskell ‐ Zusammengesetzte Datentypen (Stand: 02.11.2015)
- Haskell ‐ Funktionen höherer Ordnung (Stand: 09.11.2015)
- Haskell ‐ Algebraische Datentypen (Stand: 16.11.2015)
- Haskell ‐ Typklassen und Lazy-Auswertung (Stand: 23.11.2015)
- Haskell ‐ Anonyme Funktionen und Ein-/Ausgabe (Stand: 30.11.2015)
- Lambda-Kalkül (Teil 1) (Stand: 07.12.2015)
- Lambda-Kalkül (Teil 2) (Stand: 14.12.2015)
- Operationelle Semantik (Wiederholung) (Stand: 08.01.2016)
- Invarianten und Korrektheit (Stand: 18.01.2016)