LoKnow interview question

What is functional programming? and why we should use it?