I'm also fairly interested in Haskell but I think that studying data structures and algorithms extensively will make me a better programmer. Not learning a whole other way to program... That will not work.
I am already very comfortable in C++/Java/D and other imperative languages. I can do the same work faster because I can use global state to get easier solutions to problems.
If I want pure functions, I'll write a pure function. If I want shorter, more readable code I'll write a macro. Or maybe not.
I feel very comfortable actually, since I'll program in the same language that the OS uses. I'll feel completely at home.
The Haskell language uses the operating system to switch threads and send datagrams. And isn't the OS the biggest user of global state?
It's like doing Yoga in a Karate class.