Functional Programming
- Readers
- Torsten Grust • Alexander Ulrich
Lecture: Thur, 10:15-11:45, F119, Sand 6/7
Tutorial: Tue, 14:15-15:45, F119, Sand 6/7
Exam: Thur 17.7.2014, 16:00-18:00 (N6, Morgenstelle)
Numbers are values. Strings are values. Booleans are values. In “functional programming”, functions are “simply” values as well. This view on programming leads to an elegant and expressive programming paradigm which we will investigate in this course. During the course, we will use the programming language Haskell. The majority of the concepts we will consider applies in other (functional) languages as well.
Participants are not expected to be fluent in Haskell from the beginning. We will spend the first three weeks of the semester on a Haskell Ramp-Up. Things will progress rather fast, though. The majority of the semester will be used for the good stuff: intermediate and advanced topics, of which there are plenty.
Exercises
Weekly exercise sheets are provided on the teaching platform Ilias. Please register at the following link for the exercises: Functional Programming in Ilias. The first exercise sheet will be handed out on Monday, 14.04.2014 at 14:00.
Literature
The following introductory books on Haskell are available online:
- Lipovača: “Learn You a Haskell for Great Good”, No Starch Press 2011. Available online at learnyouahaskell.com/chapters
- O’Sullivan, Stewart, Goerzen: “Real World Haskell”, O’Reilly 2010. Available online at book.realworldhaskell.org
We will refer to additional material for the individual topics during the semester.