Mathematically Structured Functional Programming 2010