Whenever you're ready, walk me through how you'd approach this.
Explain the differences between object-oriented programming and functional programming. When would you prefer one style over the other, and what tradeoffs come with each?