Arch + DWM + URXVT + VIM here and love it. Tiling WM are so convenient. I am a little too apprehensive using Xmonad, dont have enough time to mess with haskell.
I'm using the same setup except xmonad instead of dwm. Aside from installing GHC as a dependency, I've have no need to mess with Haskell to use xmonad. And unless you're doing something crazy/brilliant with dwm, I'd doubt you'd need to hit the Haskell books either.
I used to prefer Awesome in part for the tweak-it-while-it's-running appeal of Lua configuration, although I rarely used it. Now xmonad has the same runtime configurability via GHC, with recompilation taking a second at most.