Functional Programming and OOD
Common Design Patterns