I am frankly getting sick of the notion "use the right tool for your problem", when discussing programming paradigms. No, programming paradigm is not a tool. Programming language is a tool, data structures are tools and algorithms are tools. I don't believe there exists such and such problem, that can only be solved/expressed in OO way and the only true way is to do it in OO way or the best way if you prefer.