I introduced a course in Advanced Functional
Programming, to teach senior undergraduates to solve substantial problems
in Haskell. Course topics include lazy evaluation, design of combinator
libraries, parsing and pretty-printing, monads and continuations. The course
is taught in a `problem based' manner.
I have prepared a one week intensive course for doctoral students on Program Specialisation,
which has been given here at Chalmers University and at the University of
Montevideo.