What's so bad about Template Haskell?

Parece que o Template Haskell é frequentemente visto pela comunidade Haskell como uma conveniência infeliz. É difícil colocar em palavras exatamente o que observei a esse respeito, mas considere estes poucos exemplos

Template Haskell listado em "The Ugly (mas necessário)" em resposta à perguntaQuais extensões do Haskell (GHC) os usuários devem usar / evitar?Template Haskell considerou uma solução temporária / inferior emVetores sem caixa de valores newtype'd thread (lista de discussão de bibliotecas)Yesod é frequentemente criticado por confiar demais em Template Haskell (vero post do blog em resposta a esse sentimento)

Eu vi vários posts em blogs onde as pessoas fazem coisas bem legais com o Template Haskell, permitindo uma sintaxe mais bonita que simplesmente não seria possível em Haskell regular, bem como uma tremenda redução de clichê. Então porque é que o Template Haskell é desprezado desta maneira? O que o torna indesejável? Em que circunstâncias o Template Haskell deve ser evitado e por quê?

questionAnswers(6)

yourAnswerToTheQuestion