Chapter 7 Object-Oriented Programming and Functional Programming