Re: [GHC] #7730: :info and polykinds

#7730: :info and polykinds --------------------------------------------+------------------------------ Reporter: monoidal | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: 7.8.3 Component: Compiler (Type checker) | Version: 7.6.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: None/Unknown | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #8776 --------------------------------------------+------------------------------ Comment (by simonpj): Re recursive flags, promotable, etc, the usual convention is to print that kind of stuff when `-dppr-debug` is enabled. Let's just do that for now. I was expecting you to say that a type like `Ord a => a -> Bool` is printing as `Ord a -> a -> Bool`, which isn't what the user of GHCi expects. Isn't that happening? To solvet hat I propose that we add a new constructor `IfaceDFunTy` to `IfaceType`, that behaves exactly like `IfaceFunTy` except that it prints differently. Re (2) that's an example of a bump in the road, and one I was expecting. I think it amounts to saying that the `ifAxiom` field of the `IfaceData` constructor doesn't have enough information to print nicely. One possibility is to add that information; it's kind of redundant (in the same way as `IfaceDFunTy`, but helps printing. But first, why are we calling `pprTyThing` on a family instance tycon? Does this case show up in practice? If so, how? I'd expect it to be more common to print a `IfaceFamInst`. Simon -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/7730#comment:21 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC