January 27, 2009
Pablo Nogueira
Monadic Programming in Haskell
Time:
11:00am
Location:
Meeting room 302 (Mountain View), level 3
I will briefly explain the basic concepts of functional programming. I will then move on to show you typical examples of pure code in Haskell involving currying, touching on the topic of laziness. Next, I will show you that imperative programming is functional programming with a data structure: the monad. I will illustrate the basic ideas with a simple 6-line program that reads a file and writes a new file with the former’s lines sorted. If time permits, I could show you a monadic type-checker for a simple expression language.