[Template-haskell] Why doesn't this program work?