id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	os	architecture	failure	difficulty	testcase	blockedby	blocking	related
3080	Show more instances with :info	josef		"Today I was really stumped by the rule used to select which instances are shown with the :info command. I did the following:
{{{
newtype Control.Monad.Writer.Lazy.Writer w a
  = Control.Monad.Writer.Lazy.Writer {Control.Monad.Writer.Lazy.runWriter :: (a,
                                                                              w)}
  	-- Defined in Control.Monad.Writer.Lazy
instance Functor (Control.Monad.Writer.Lazy.Writer w)
  -- Defined in Control.Monad.Writer.Lazy
}}}
I was really surprised not to see a Monad instance which, after all, is the raison d'entre of the Writer type. After some investigation I found out that this behavior is a combination of ghci's rule not to show instances which involves stuff not in scope and the fact that Monoid wasn't in scope.

Now, personally I tend to want to see everything when I use the :info command so my preference would be to see all instances. But I realize that you came up with the current rule for a reason and so here are some alternative ways how to please me. 

The first one is to have some kind of flag to give to :info so that it shows all instances. One might of course make it so that a flag is needed to suppress extraneous instances and get the current behavior. That would actually be my personal preference.

Another way, which I'm not sure I like but would at least help in the example above, is to note that the type I'm asking about is not in scope in the first place. So I'm not interested in 'in scope stuff' at all and so showing me all instances, even those including things not in scope, isn't very likely to confuse me. This rule would have the rather confusing effect of potentially showing less information about stuff that is in scope compared to things that are not in scope. But despite this confusing consequence I find the rule very sensible, so I'm in two minds about it.

Anyway, having some way to see all instances would be nice."	feature request	closed	lowest	7.6.2	GHCi	6.10.1	duplicate		iampure@…	Unknown/Multiple	Unknown/Multiple	None/Unknown	Unknown				
