Domanda di colloquio di SigFig

What is functional programming? When do we use functional programming and when we use OOP?