My main research interests are functional programming, type systems, high-performance computing, and programming language based approaches to verification.
I'm also interested in teaching of functional programming, and have co-authored the (still incomplete) Learning Haskell Tutorial together with Manuel Chakravarty.