<div dir="ltr"><br><div>This may be a stupid question, but I'm wondering why the following instance isn't in prelude:</div><div><br></div><div>instance (Applicative m, Monoid a) => Monoid (m a) where</div><div>    mempty = pure mempty</div><div>    mappend a b = mappend <$> a <*> b</div><div><br></div><div>?<br><br>I ask, because being able to use a WriterT (IO ()) STM a to debug complex STM expressions would be really nice.  But it depends upon IO () being a monoid.<br></div><div><br></div><div>Brian</div><div><br></div></div>