Dear Haskell-cafe, When dealing with ghc type errors I often see messages like
Couldn't match expected type `ghc-prim:GHC.Types.IO{tc 32I}
MyTypeNameHere{tc r1d8}'
with actual type `ghc-prim:GHC.Types.IO{tc 32I}
MyOtherTypeNameHere{tc r1d8}'
Could you please help me understand the meaning of the entities
in {} and why are they useful, or point to a source of information about them?
Messages where familiar types are referenced are easy to read,
but occasionally I get messages of the sort
with actual type `[( b0{tv t3p} [tau] :: ghc-prim:GHC.Prim.*{(w) tc
34d} )]'
How do I go about reading the type
[( b0{tv t3p} [tau] :: ghc-prim:GHC.Prim.*{(w) tc 34d} )]
?
E.g., where the names 'b0' and '[tau]' come from?
What does '(w)' in '{(w) tc 34d}' mean?
Thank you,
Semen
--
Семен Тригубенко
signature.asc
Description: Digital signature
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
