19305601
Lecture
WiSe 23/24: Functional Programming
Katharina Klost
Comments
Contents:
Introduction to Functional Programming (Haskell):
- Syntax (Backus-Naur Form)
- primitive data types, lists, tuples, strings
-
- expressions, function definitions, recursion and iteration evaluation strategies of functional programs
- higher-order functions
- polymorphism
- type system and verification
- Algebraic and abstract data types
- input, output and Monads
- searching and sorting algorithms
Introduction of computability:
- Lambda calculus
- Primitive Recursion
- μ-Recursion
Proofs of program properties:
- Term Rewriting
- Structural induction
- Termination
Implementation and programming technique:
- Modular program design
Suggested reading
- Simon Thompson: Haskell: The Craft of Functional Programming, 2nd Edition, Addison-Wesley, 1999
- 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
32 Class schedule
Additional appointments
Wed, 2024-02-21 10:00 - 13:00Klausur
Mon, 2024-03-04 10:30 - 12:30
Klausureinsicht
Wed, 2024-04-10 10:00 - 13:00
Nachklausur
Wed, 2024-04-10 10:00 - 13:00
Nachklausur Funktionale Programmierung
Location:
T9/SR 005 Übungsraum (Takustr. 9)
Regular appointments
Wed, 2023-10-18 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-10-25 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-11-01 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-11-08 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-11-15 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-11-22 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-11-29 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-12-06 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-12-13 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2023-12-20 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2024-01-10 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2024-01-17 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2024-01-24 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2024-01-31 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2024-02-07 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Wed, 2024-02-14 08:00 - 10:00
Funktionale Programmierung (Serientermin 2)
Fri, 2023-10-20 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-10-27 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-11-03 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-11-10 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-11-17 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-11-24 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-12-01 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-12-08 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-12-15 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2023-12-22 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2024-01-12 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2024-01-19 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2024-01-26 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2024-02-02 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2024-02-09 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)
Fri, 2024-02-16 08:00 - 10:00
Funktionale Programmierung (Serientermin 1)