I use a really similar wm called Awesome (written in C and Lua), but I might switch once I grok haskell more.
I used xmonad for a while actually before switching to awesome. I found the latter easier to configure and better out of the box (especially with multiple displays), plus I wanted to learn Lua over Haskell at the time. I found my productivity increased dramatically using either.