Code following "Functional Programming for the Object Oriented Programmer"