[Haskell-cafe] Remove redundancy with Template Haskell