Universität Bremen  
  FB 3  
  Group BKB > Teaching > WS 03/04 > Fun-PI3 > Deutsch
English
 

Contents of the Course

 
According to the Computer Science program of 1993, version of fall 2002, the course Praktische Informatik 3 - Functionales Programmieren (practical computer science - functional programming) shall cover the following topics:
  • Foundations of functional programming:
    • Expressions and their evaluation
    • Function definition by recursive equations
    • Pattern matching
    • Evaluation, reduction, normalform
    • Higher order functions, currying
    • Polymorphism
    • Type correctness and type inference
  • Types:
    • Algebraic data types
    • Standard data types (Lists, Cartesian products, lifting) and
      standard functions (fold, map, filter)
    • Trees
    • Graphs
  • Structuring and Specification:
    • Modules
    • Interfaces
    • Abstract data types
    • Signatures and axioms
  • Theoretic aspects:
    • Denotational semantics
    • Referential transparency
    • Term rewriting and lambda calculus
    • Proof by structural induction
    • Program development by transformation
  • Advanced functional programming:
    • Monads
    • Funktional I/O with Monads
    • Overloading, type classes, constructor classes
    • Polymorphic recursion
    • Strict and lazy evaluation
    • Infinite data types, co-induction
    • Extensions of the type system
 
   
Author: Dr. Berthold Hoffmann
 
  Group BKB 
Last updated: March 15, 2004   impressum