This file is indexed.

/usr/share/doc/libghc-base-compat-doc/html/Control-Monad-Compat.html is in libghc-base-compat-doc 0.9.1-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Control.Monad.Compat</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="file:///usr/share/javascript/mathjax/MathJax.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Control-Monad-Compat.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Control-Monad-Compat.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">base-compat-0.9.1: A compatibility layer for base</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>Safe</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Control.Monad.Compat</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">class</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:Applicative">Applicative</a> m =&gt; <a href="#t:Monad">Monad</a> m <span class="keyword">where</span><ul class="subs"><li><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: m a -&gt; (a -&gt; m b) -&gt; m b</li><li><a href="#v:-62--62-">(&gt;&gt;)</a> :: m a -&gt; m b -&gt; m b</li><li><a href="#v:return">return</a> :: a -&gt; m a</li><li><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; m a</li></ul></li><li class="src short"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:Alternative">Alternative</a> m, <a href="Control-Monad-Compat.html#t:Monad">Monad</a> m) =&gt; <a href="#t:MonadPlus">MonadPlus</a> m <span class="keyword">where</span><ul class="subs"><li><a href="#v:mzero">mzero</a> :: m a</li><li><a href="#v:mplus">mplus</a> :: m a -&gt; m a -&gt; m a</li></ul></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">class</span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:Applicative">Applicative</a> m =&gt; <a id="t:Monad" class="def">Monad</a> m <span class="keyword">where</span> <a href="#t:Monad" class="selflink">#</a></p><div class="doc"><p>The <code><a href="Control-Monad-Compat.html#t:Monad">Monad</a></code> class defines the basic operations over a <em>monad</em>,
a concept from a branch of mathematics known as <em>category theory</em>.
From the perspective of a Haskell programmer, however, it is best to
think of a monad as an <em>abstract datatype</em> of actions.
Haskell's <code>do</code> expressions provide a convenient syntax for writing
monadic expressions.</p><p>Instances of <code><a href="Control-Monad-Compat.html#t:Monad">Monad</a></code> should satisfy the following laws:</p><ul><li><pre><code><a href="Control-Monad-Compat.html#v:return">return</a></code> a <code><a href="Control-Monad-Compat.html#v:-62--62--61-">&gt;&gt;=</a></code> k  =  k a</pre></li><li><pre>m <code><a href="Control-Monad-Compat.html#v:-62--62--61-">&gt;&gt;=</a></code> <code><a href="Control-Monad-Compat.html#v:return">return</a></code>  =  m</pre></li><li><pre>m <code><a href="Control-Monad-Compat.html#v:-62--62--61-">&gt;&gt;=</a></code> (x -&gt; k x <code><a href="Control-Monad-Compat.html#v:-62--62--61-">&gt;&gt;=</a></code> h)  =  (m <code><a href="Control-Monad-Compat.html#v:-62--62--61-">&gt;&gt;=</a></code> k) <code><a href="Control-Monad-Compat.html#v:-62--62--61-">&gt;&gt;=</a></code> h</pre></li></ul><p>Furthermore, the <code><a href="Control-Monad-Compat.html#t:Monad">Monad</a></code> and <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:Applicative">Applicative</a></code> operations should relate as follows:</p><ul><li><pre><code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#v:pure">pure</a></code> = <code><a href="Control-Monad-Compat.html#v:return">return</a></code></pre></li><li><pre>(<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#v:-60--42--62-">&lt;*&gt;</a></code>) = <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad.html#v:ap">ap</a></code></pre></li></ul><p>The above laws imply:</p><ul><li><pre><code><a href="Data-Functor-Compat.html#v:fmap">fmap</a></code> f xs  =  xs <code><a href="Control-Monad-Compat.html#v:-62--62--61-">&gt;&gt;=</a></code> <code><a href="Control-Monad-Compat.html#v:return">return</a></code> . f</pre></li><li><pre>(<code><a href="Control-Monad-Compat.html#v:-62--62-">&gt;&gt;</a></code>) = (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#v:-42--62-">*&gt;</a></code>)</pre></li></ul><p>and that <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#v:pure">pure</a></code> and (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#v:-60--42--62-">&lt;*&gt;</a></code>) satisfy the applicative functor laws.</p><p>The instances of <code><a href="Control-Monad-Compat.html#t:Monad">Monad</a></code> for lists, <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#v:Maybe">Maybe</a></code> and <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#v:IO">IO</a></code>
defined in the <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Prelude.html">Prelude</a> satisfy these laws.</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Control-Monad-Compat.html#v:-62--62--61-">(&gt;&gt;=)</a></p></div><div class="subs instances"><p id="control.i:Monad" class="caption collapser" onclick="toggleSection('i:Monad')">Instances</p><div id="section.i:Monad" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:1" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:1')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> []</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: [a] -&gt; (a -&gt; [b]) -&gt; [b] <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: [a] -&gt; [b] -&gt; [b] <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; [a] <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; [a] <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:2" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:2')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:3" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:3')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:4" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:4')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:5" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:5')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Par1">Par1</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:6" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:6')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> P</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: P a -&gt; (a -&gt; P b) -&gt; P b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: P a -&gt; P b -&gt; P b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; P a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; P a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:7" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:7')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Complex.html#t:Complex">Complex</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:8" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:8')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:9" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:9')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:9" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Dual">Dual</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:10" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:10')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:10" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Sum">Sum</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:11" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:11')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:11" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Product">Product</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:12" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:12')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:12" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:First">First</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:13" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:13')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:13" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Last">Last</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:14" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:14')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:14" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:15" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:15')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:15" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:16" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:16')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> ((-&gt;) r)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:16" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: (r -&gt; a) -&gt; (a -&gt; r -&gt; b) -&gt; r -&gt; b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: (r -&gt; a) -&gt; (r -&gt; b) -&gt; r -&gt; b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; r -&gt; a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; r -&gt; a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:17" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:17')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:17" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Either.html#t:Either">Either</a> e a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:18" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:18')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> f =&gt; <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:18" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:19" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:19')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Monoid">Monoid</a> a =&gt; <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.5.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> a)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:19" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: (a, a) -&gt; (a -&gt; (a, b)) -&gt; (a, b) <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: (a, a) -&gt; (a, b) -&gt; (a, b) <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; (a, a) <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; (a, a) <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:20" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:20')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:20" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST.html#t:ST">ST</a> s a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:21" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:21')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:21" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-ST-Lazy.html#t:ST">ST</a> s a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:22" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:22')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> m =&gt; <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:22" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:WrappedMonad">WrappedMonad</a> m a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:23" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:23')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a>)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:23" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:24" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:24')"></span> (<a href="Control-Monad-Compat.html#t:Monad">Monad</a> f, <a href="Control-Monad-Compat.html#t:Monad">Monad</a> g) =&gt; <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">(:*:)</a> f g)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:24" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a -&gt; (a -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) b) -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) b -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:25" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:25')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> f =&gt; <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:25" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Monad:Monad:26" class="instance expander" onclick="toggleSection('i:ic:Monad:Monad:26')"></span> <a href="Control-Monad-Compat.html#t:Monad">Monad</a> f =&gt; <a href="Control-Monad-Compat.html#t:Monad">Monad</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Monad:Monad:26" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="Data-String-Compat.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Applicative.html#t:Alternative">Alternative</a> m, <a href="Control-Monad-Compat.html#t:Monad">Monad</a> m) =&gt; <a id="t:MonadPlus" class="def">MonadPlus</a> m <span class="keyword">where</span> <a href="#t:MonadPlus" class="selflink">#</a></p><div class="doc"><p>Monads that also support choice and failure.</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src">Nothing</p></div><div class="subs instances"><p id="control.i:MonadPlus" class="caption collapser" onclick="toggleSection('i:MonadPlus')">Instances</p><div id="section.i:MonadPlus" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:1" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:1')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> []</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: [a] <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: [a] -&gt; [a] -&gt; [a] <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:2" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:2')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:3" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:3')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/System-IO.html#t:IO">IO</a> a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:4" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:4')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:U1">U1</a> a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:5" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:5')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> P</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: P a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: P a -&gt; P a -&gt; P a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:6" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:6')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Conc.html#t:STM">STM</a> a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:7" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:7')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:8" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:8')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a></span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Text-ParserCombinators-ReadP.html#t:ReadP">ReadP</a> a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:9" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:9')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> f =&gt; <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:9" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:Rec1">Rec1</a> f a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:10" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:10')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a>)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:10" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Proxy.html#t:Proxy">Proxy</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:11" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:11')"></span> (<a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> f, <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> g) =&gt; <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">(:*:)</a> f g)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:11" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a -&gt; (f <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t::-42-:">:*:</a> g) a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:12" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:12')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> f =&gt; <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:12" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Monoid.html#t:Alt">Alt</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-Kind.html#t:-42-">*</a> f a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:MonadPlus:MonadPlus:13" class="instance expander" onclick="toggleSection('i:ic:MonadPlus:MonadPlus:13')"></span> <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> f =&gt; <a href="Control-Monad-Compat.html#t:MonadPlus">MonadPlus</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f)</span></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:MonadPlus:MonadPlus:13" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mzero">mzero</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a <a href="#v:mzero" class="selflink">#</a></p><p class="src"><a href="#v:mplus">mplus</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/GHC-Generics.html#t:M1">M1</a> i c f a <a href="#v:mplus" class="selflink">#</a></p></div></div></td></tr></table></div></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.2</p></div></body></html>