haskell ghci template-haskell

Plantilla Haskell: reificar en GHCi



template-haskell (1)

¿Es posible de alguna manera reificar en GHCi?

Cuando lo intento usando ''runQ'', se queja "no se puede reificar en la mónada IO"

>>> runQ (reify ''''Bool) Template Haskell error: Can''t do `reify'' in the IO monad *** Exception: user error (Template Haskell failure)

No estoy buscando :t o algo, solo una forma de verificar rápidamente qué es lo que devuelve sin escribirlo en un archivo y cargarlo en GHCi.


Solo tienes que ejecutarlo desde un empalme en lugar de usar runQ :

> $(stringE . show =<< reify ''''Bool) "TyConI (DataD [] GHC.Types.Bool [] [NormalC GHC.Types.False [],NormalC GHC.Types.True []] [])"