According to the Haddock documentation for Control.Monad at http://www.haskell.org/ghc/, `IO` is an instance of `MonadPlus`. 1. Where in documentation is this instance described? 2. Where in source code is this instance implemented? 3. Could links to the answers to 1 and 2 be added to the Haddock documentation for Control.Monad? Obviously, these questions apply more generally than just to `MonadPlus IO`. Dean