content: module Data.Monoid where
  
  
  
  class Monoid a where
    mempty :: a
    mappend :: a -> a -> a
    mconcat :: [a] -> a
  
  
  instance Monoid Ordering  
  instance Monoid ()  
  instance Monoid Any   
  instance Monoid All   
  instance Monoid Event   
  instance Monoid [a]   
  instance Monoid a => Monoid (Maybe a)  
  instance Monoid (Last a)  
  instance Monoid (First a)   
  instance Prelude.Num a => Monoid (Product a)  
  instance Prelude.Num a => Monoid (Sum a)  
  instance Monoid (Endo a)  
  instance Monoid a => Monoid (Dual a)  
  -- instance Monoid b => Monoid (a -> b)  
  instance (Monoid a, Monoid b) => Monoid (a, b)  
  -- instance Monoid (Proxy * s)   
  instance Monoid a => Monoid (Const a b)   
  -- instance Typeable (* -> Constraint) Monoid  
  instance (Monoid a, Monoid b, Monoid c) => Monoid (a, b, c)   
  instance (Monoid a, Monoid b, Monoid c, Monoid d) => Monoid (a, b, c, d)  
  instance (Monoid a, Monoid b, Monoid c, Monoid d, Monoid e) => Monoid (a, b, c, d, e)
  
  data Dual a
  data Endo a
  data All
  data Any
  data Sum a
  data Product a
  data First a
  data Last a
  data Alt f a
  