:info features

Remi Turk rturk at science.uva.nl
Thu Feb 5 05:49:54 EST 2009


One of my most used GHCi commands is :info, but quite often
the type or class definitions that I'm interested in get drowned
in lots of instances.

So a week ago I wrote a feature request and a little patch that
allowed the following:

   :info Show     -- See class definition and instances
   :info -Show    -- See class definition only

SPJ agreed with the idea itself, but suggested an alternative set of commands:

   :info Show        -- See class definition only
   :instances Show   -- See instances of Show

This would have the advantage of making it easier to later add
additional features:

   :instances Show (Tree _)   -- See instances of form (Show (Tree ...))

However, it would make ":i" ambiguous, which is rather sad.

Another potential addition to :info (or another command) would be
evaluating types to their normal form, that is, expanding
(associated) type synonyms. E.g.:

   :typeeval Plus (Suc Zero) (Suc Zero)   -- (Suc (Suc (Suc (Suc Zero))))

Again, the question is whether this is really useful
(or reasonably easy to implement, SPJ?) and if so, what interface
is to be preferred?

So what's your favourite syntax? One of these options or something else?
Or are these features completely unnecessary?

Oh, the ticket can be found at
http://hackage.haskell.org/trac/ghc/ticket/2986#comment:3

Groeten, Remi


More information about the Glasgow-haskell-users mailing list