Exercises from Functional Programming for the Object Oriented Programmer