A lot of computational problems are not math but interfacing, I think Haskell excels in the math related world and not in the interfacing one.
This besides the steep learning curve, for myself personally a programming language is also a tool to help getting a mental picture of the problems to be solved. I loose much of the mental picture when using a functional language, but also when using a deep OO language. A functional language is too compact for me and a deep OO language too fragmented.
Must be my deficiency, I cannot speak for others.