Object Oriented Programming vs Functional ... and a Banana.