"Neil Mitchell" <[EMAIL PROTECTED]> writes: > Hi, > > > class Monad m | Functor m, Monoid m where ... > > Nice - I was having exactly this problem in Hoogle, if you list all > the class dependancies first, you can't really see the actual class. > It also makes grep'ing easier. > > > data EncodedStream m h | Monad m, Stream m h = ... > > Ditto > > > sequence :: [m a] -> m [a] | Monad m > > I don't like this. In the other two instances you are moving the most > important information (the name of the thing) to the front. In this > the name is at the front, but the instances move to the end, which > isn't really where they should be.
I don't see the problem. You can read all of Bulat's examples as "'thing being declared' 'relationship' 'value' given that 'context'", so this one is "“sequence” has type “[m a] -> m [a]” given that “m” is a “Monad”". So viewed that way, they're all consistent with each other. [Hmm. I think I need to restrain myself a bit on the use of different types of quotation mark :-)] Isn't the etiquette to discuss postings here in the café? -- Jón Fairbairn [EMAIL PROTECTED] _______________________________________________ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell