I recently switched from dwm to xmonad. I did not like the rigid constraint on a certain number of code lines. The resulting way of doing it with patches in my opinion is not very sincere. I needed only two - and they did not match.
Though I do not know haskell at all I find it very simple to configure xmonad, took me an hour or so to get things done. But on the other hand being no coder I do not fit into the dwm target group anyhow. ;) henry