19307601 Lecture

SoSe 18: ProInformatik II: Functional Programming

Katharina Klost Jonas Cleve

Additional information / Pre-requisites

Registration for the course can only be done through the Proinformatik registration!

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
close

Suggested reading

  • Simon Thompson: Haskell: The Craft of Functional Programming, Third Edition, Addison-Wesley, 2011.
  • 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.
close

25 Class schedule

Regular appointments

Mon, 2018-07-23 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Tue, 2018-07-24 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Wed, 2018-07-25 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Thu, 2018-07-26 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Fri, 2018-07-27 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Mon, 2018-07-30 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Tue, 2018-07-31 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Wed, 2018-08-01 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Thu, 2018-08-02 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Fri, 2018-08-03 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Mon, 2018-08-06 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Tue, 2018-08-07 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Wed, 2018-08-08 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Thu, 2018-08-09 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Fri, 2018-08-10 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Mon, 2018-08-13 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Tue, 2018-08-14 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Wed, 2018-08-15 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Thu, 2018-08-16 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Fri, 2018-08-17 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Mon, 2018-08-20 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Tue, 2018-08-21 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Wed, 2018-08-22 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Thu, 2018-08-23 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Fri, 2018-08-24 09:00 - 12:00

Location:
T9/Gr. Hörsaal (Takustr. 9)

Subjects A - Z