El TemplateHaskell citando documentos dos comillas (''
) como la manera de obtener el nombre de un tipo:plantilla de tipo citando Haskell problemas
> ''String
GHC.Base.String
Esto funciona bien para este tipo de (nombre). Sin embargo, no puedo encontrar la manera de que funcione bien, por ej. Maybe String
:
> ''Maybe String -- interprets String as a data constructor
> ''Maybe ''String -- wants to apply ''String to the Name type
Sé que puedo solucionar mediante el uso de [t| Maybe String |]
, pero esto es a continuación en la mónada Q, y requiere escribir los cambios, y creo que no es escribir sido comprobado por el momento respectivo, sólo cuando empalmado en.
También puedo solucionar el problema definiendo primero un alias tipo, type MaybeString = Maybe String
, y luego usando ''MaybeString
, pero esto también es engorroso.
Cualquier forma de obtener directamente lo que quiero simplemente mediante la cotización ''
?
Gracias, entonces yo supongo que tengo que usar ya sea quasiquoting o encontrar otra solución para no tener que añadir [l | |] en todas partes ... – iustin