<html xmlns="http://www.w3.org/1999/xhtml" ><head ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title >Instances</title ><link href="#" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript" ></script ><script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript" ></script ><script type="text/javascript" >// window.onload = function () {pageLoad();setSynopsis("mini_Instances.html");}; // </script ></head ><body ><div id="package-header" ><ul class="links" id="page-menu" ><li ><a href="#" >Contents</a ></li ><li ><a href="#" >Index</a ></li ></ul ><p class="caption empty" ></p ></div ><div id="content" ><div id="module-header" ><table class="info" ><tr ><th >Safe Haskell</th ><td >Safe</td ></tr ></table ><p class="caption" >Instances</p ></div ><div id="interface" ><h1 >Documentation</h1 ><div class="top" ><p class="src" ><span class="keyword" >newtype</span > a <a id="t:-60--126--126-" class="def" ><~~</a > b <a href="#" class="selflink" >#</a ></p ><div class="subs constructors" ><p class="caption" >Constructors</p ><table ><tr ><td class="src" ><a id="v:Xyzzy" class="def" >Xyzzy</a > (b -> (a, a))</td ><td class="doc empty" ></td ></tr ></table ></div ><div class="subs instances" ><p id="control.i:-60--126--126-" class="caption collapser" onclick="toggleSection('i:-60--126--126-')" >Instances</p ><div id="section.i:-60--126--126-" class="show" ><table ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:id:-60--126--126-:Foo:1" class="instance expander" onclick="toggleSection('i:id:-60--126--126-:Foo:1')" ></span > <a href="#" >Foo</a > (<a href="#" >(<~~)</a > a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:id:-60--126--126-:Foo:1" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: (a <a href="#" ><~~</a > <a href="#" >Int</a >) -> a -> a <a href="#" ><~~</a > a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: (a <a href="#" ><~~</a > (a <a href="#" ><~~</a > a)) -> <a href="#" >Int</a > -> a <a href="#" ><~~</a > (a <a href="#" ><~~</a > <a href="#" >Int</a >) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ></table ></div ></div ></div ><div class="top" ><p class="src" ><span class="keyword" >class</span > <a id="t:Foo" class="def" >Foo</a > f <span class="keyword" >where</span > <a href="#" class="selflink" >#</a ></p ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a id="v:foo" class="def" >foo</a > :: f <a href="#" >Int</a > -> a -> f a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a id="v:foo-39-" class="def" >foo'</a > :: f (f a) -> <a href="#" >Int</a > -> f (f <a href="#" >Int</a >) <a href="#" class="selflink" >#</a ></p ></div ><div class="subs instances" ><p id="control.i:Foo" class="caption collapser" onclick="toggleSection('i:Foo')" >Instances</p ><div id="section.i:Foo" class="show" ><table ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:1" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:1')" ></span > <a href="#" >Foo</a > []</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:1" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: [<a href="#" >Int</a >] -> a -> [a] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: [[a]] -> <a href="#" >Int</a > -> [[<a href="#" >Int</a >]] <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:2" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:2')" ></span > <a href="#" >Foo</a > <a href="#" >Maybe</a ></span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:2" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: <a href="#" >Maybe</a > <a href="#" >Int</a > -> a -> <a href="#" >Maybe</a > a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: <a href="#" >Maybe</a > (<a href="#" >Maybe</a > a) -> <a href="#" >Int</a > -> <a href="#" >Maybe</a > (<a href="#" >Maybe</a > <a href="#" >Int</a >) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:3" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:3')" ></span > <a href="#" >Foo</a > ((->) a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:3" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: (a -> <a href="#" >Int</a >) -> a -> a -> a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: (a -> a -> a) -> <a href="#" >Int</a > -> a -> a -> <a href="#" >Int</a > <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:4" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:4')" ></span > <a href="#" >Foo</a > (<a href="#" >Either</a > a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:4" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: <a href="#" >Either</a > a <a href="#" >Int</a > -> a -> <a href="#" >Either</a > a a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: <a href="#" >Either</a > a (<a href="#" >Either</a > a a) -> <a href="#" >Int</a > -> <a href="#" >Either</a > a (<a href="#" >Either</a > a <a href="#" >Int</a >) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:5" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:5')" ></span > (<a href="#" >Eq</a > a, <a href="#" >Foo</a > f) => <a href="#" >Foo</a > (<a href="#" >(,)</a > (f a))</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:5" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: (f a, <a href="#" >Int</a >) -> a -> (f a, a) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: (f a, (f a, a)) -> <a href="#" >Int</a > -> (f a, (f a, <a href="#" >Int</a >)) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:6" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:6')" ></span > <a href="#" >Foo</a > (<a href="#" >(<~~)</a > a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:6" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: (a <a href="#" ><~~</a > <a href="#" >Int</a >) -> a -> a <a href="#" ><~~</a > a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: (a <a href="#" ><~~</a > (a <a href="#" ><~~</a > a)) -> <a href="#" >Int</a > -> a <a href="#" ><~~</a > (a <a href="#" ><~~</a > <a href="#" >Int</a >) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:7" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:7')" ></span > <a href="#" >Foo</a > (<a href="#" >(,,)</a > a a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:7" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: (a, a, <a href="#" >Int</a >) -> a -> (a, a, a) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: (a, a, (a, a, a)) -> <a href="#" >Int</a > -> (a, a, (a, a, <a href="#" >Int</a >)) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Foo:Foo:8" class="instance expander" onclick="toggleSection('i:ic:Foo:Foo:8')" ></span > <a href="#" >Foo</a > (<a href="#" >Quux</a > a b)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Foo:Foo:8" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: <a href="#" >Quux</a > a b <a href="#" >Int</a > -> a -> <a href="#" >Quux</a > a b a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: <a href="#" >Quux</a > a b (<a href="#" >Quux</a > a b a) -> <a href="#" >Int</a > -> <a href="#" >Quux</a > a b (<a href="#" >Quux</a > a b <a href="#" >Int</a >) <a href="#" 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="#" >Foo</a > f => <a id="t:Bar" class="def" >Bar</a > f a <span class="keyword" >where</span > <a href="#" class="selflink" >#</a ></p ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a id="v:bar" class="def" >bar</a > :: f a -> f <a href="#" >Bool</a > -> a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a id="v:bar-39-" class="def" >bar'</a > :: f (f a) -> f (f (f b)) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a id="v:bar0" class="def" >bar0</a >, <a id="v:bar1" class="def" >bar1</a > :: (f a, f a) -> (f b, f c) <a href="#" class="selflink" >#</a ></p ></div ><div class="subs instances" ><p id="control.i:Bar" class="caption collapser" onclick="toggleSection('i:Bar')" >Instances</p ><div id="section.i:Bar" class="show" ><table ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Bar:Bar:1" class="instance expander" onclick="toggleSection('i:ic:Bar:Bar:1')" ></span > <a href="#" >Bar</a > <a href="#" >Maybe</a > <a href="#" >Bool</a ></span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Bar:Bar:1" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >bar</a > :: <a href="#" >Maybe</a > <a href="#" >Bool</a > -> <a href="#" >Maybe</a > <a href="#" >Bool</a > -> <a href="#" >Bool</a > <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar'</a > :: <a href="#" >Maybe</a > (<a href="#" >Maybe</a > <a href="#" >Bool</a >) -> <a href="#" >Maybe</a > (<a href="#" >Maybe</a > (<a href="#" >Maybe</a > b)) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar0</a > :: (<a href="#" >Maybe</a > <a href="#" >Bool</a >, <a href="#" >Maybe</a > <a href="#" >Bool</a >) -> (<a href="#" >Maybe</a > b, <a href="#" >Maybe</a > c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar1</a > :: (<a href="#" >Maybe</a > <a href="#" >Bool</a >, <a href="#" >Maybe</a > <a href="#" >Bool</a >) -> (<a href="#" >Maybe</a > b, <a href="#" >Maybe</a > c) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Bar:Bar:2" class="instance expander" onclick="toggleSection('i:ic:Bar:Bar:2')" ></span > <a href="#" >Bar</a > <a href="#" >Maybe</a > [a]</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Bar:Bar:2" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >bar</a > :: <a href="#" >Maybe</a > [a] -> <a href="#" >Maybe</a > <a href="#" >Bool</a > -> [a] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar'</a > :: <a href="#" >Maybe</a > (<a href="#" >Maybe</a > [a]) -> <a href="#" >Maybe</a > (<a href="#" >Maybe</a > (<a href="#" >Maybe</a > b)) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar0</a > :: (<a href="#" >Maybe</a > [a], <a href="#" >Maybe</a > [a]) -> (<a href="#" >Maybe</a > b, <a href="#" >Maybe</a > c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar1</a > :: (<a href="#" >Maybe</a > [a], <a href="#" >Maybe</a > [a]) -> (<a href="#" >Maybe</a > b, <a href="#" >Maybe</a > c) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Bar:Bar:3" class="instance expander" onclick="toggleSection('i:ic:Bar:Bar:3')" ></span > <a href="#" >Bar</a > [] (a, a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Bar:Bar:3" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >bar</a > :: [(a, a)] -> [<a href="#" >Bool</a >] -> (a, a) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar'</a > :: [[(a, a)]] -> [[[b]]] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar0</a > :: ([(a, a)], [(a, a)]) -> ([b], [c]) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar1</a > :: ([(a, a)], [(a, a)]) -> ([b], [c]) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Bar:Bar:4" class="instance expander" onclick="toggleSection('i:ic:Bar:Bar:4')" ></span > <a href="#" >Foo</a > f => <a href="#" >Bar</a > (<a href="#" >Either</a > a) (f a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Bar:Bar:4" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >bar</a > :: <a href="#" >Either</a > a (f a) -> <a href="#" >Either</a > a <a href="#" >Bool</a > -> f a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar'</a > :: <a href="#" >Either</a > a (<a href="#" >Either</a > a (f a)) -> <a href="#" >Either</a > a (<a href="#" >Either</a > a (<a href="#" >Either</a > a b)) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar0</a > :: (<a href="#" >Either</a > a (f a), <a href="#" >Either</a > a (f a)) -> (<a href="#" >Either</a > a b, <a href="#" >Either</a > a c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar1</a > :: (<a href="#" >Either</a > a (f a), <a href="#" >Either</a > a (f a)) -> (<a href="#" >Either</a > a b, <a href="#" >Either</a > a c) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Bar:Bar:5" class="instance expander" onclick="toggleSection('i:ic:Bar:Bar:5')" ></span > <a href="#" >Foo</a > (<a href="#" >(,,)</a > a b) => <a href="#" >Bar</a > (<a href="#" >(,,)</a > a b) (a, b, a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Bar:Bar:5" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >bar</a > :: (a, b, (a, b, a)) -> (a, b, <a href="#" >Bool</a >) -> (a, b, a) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar'</a > :: (a, b, (a, b, (a, b, a))) -> (a, b, (a, b, (a, b, b))) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar0</a > :: ((a, b, (a, b, a)), (a, b, (a, b, a))) -> ((a, b, b), (a, b, c)) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar1</a > :: ((a, b, (a, b, a)), (a, b, (a, b, a))) -> ((a, b, b), (a, b, c)) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Bar:Bar:6" class="instance expander" onclick="toggleSection('i:ic:Bar:Bar:6')" ></span > <a href="#" >Bar</a > (<a href="#" >Quux</a > a c) (<a href="#" >Quux</a > a b c)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Bar:Bar:6" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >bar</a > :: <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c) -> <a href="#" >Quux</a > a c <a href="#" >Bool</a > -> <a href="#" >Quux</a > a b c <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar'</a > :: <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c)) -> <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a c b)) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar0</a > :: (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c), <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c)) -> (<a href="#" >Quux</a > a c b, <a href="#" >Quux</a > a c c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar1</a > :: (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c), <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c)) -> (<a href="#" >Quux</a > a c b, <a href="#" >Quux</a > a c c) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ></table ></div ></div ></div ><div class="top" ><p class="src" ><span class="keyword" >class</span > <a id="t:Baz" class="def" >Baz</a > a <span class="keyword" >where</span > <a href="#" class="selflink" >#</a ></p ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a id="v:baz" class="def" >baz</a > :: a -> (<span class="keyword" >forall</span > a. a -> a) -> (b, <span class="keyword" >forall</span > c. c -> a) -> (b, c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a id="v:baz-39-" class="def" >baz'</a > :: b -> (<span class="keyword" >forall</span > b. b -> a) -> (<span class="keyword" >forall</span > b. b -> a) -> [(b, a)] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a id="v:baz-39--39-" class="def" >baz''</a > :: b -> (<span class="keyword" >forall</span > b. (<span class="keyword" >forall</span > b. b -> a) -> c) -> <span class="keyword" >forall</span > c. c -> b <a href="#" class="selflink" >#</a ></p ></div ><div class="subs instances" ><p id="control.i:Baz" class="caption collapser" onclick="toggleSection('i:Baz')" >Instances</p ><div id="section.i:Baz" class="show" ><table ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Baz:Baz:1" class="instance expander" onclick="toggleSection('i:ic:Baz:Baz:1')" ></span > <a href="#" >Baz</a > [c]</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Baz:Baz:1" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >baz</a > :: [c] -> (<span class="keyword" >forall</span > a. a -> a) -> (b, <span class="keyword" >forall</span > a. a -> [c]) -> (b, c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz'</a > :: b -> (<span class="keyword" >forall</span > b. b -> [c]) -> (<span class="keyword" >forall</span > b. b -> [c]) -> [(b, [c])] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz''</a > :: b -> (<span class="keyword" >forall</span > b. (<span class="keyword" >forall</span > a. a -> [c]) -> c) -> <span class="keyword" >forall</span > a. a -> b <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Baz:Baz:2" class="instance expander" onclick="toggleSection('i:ic:Baz:Baz:2')" ></span > <a href="#" >Baz</a > (a -> b)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Baz:Baz:2" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >baz</a > :: (a -> b) -> (<span class="keyword" >forall</span > c. c -> c) -> (b, <span class="keyword" >forall</span > c. c -> a -> b) -> (b, c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz'</a > :: b -> (<span class="keyword" >forall</span > c. c -> a -> b) -> (<span class="keyword" >forall</span > c. c -> a -> b) -> [(b, a -> b)] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz''</a > :: b -> (<span class="keyword" >forall</span > c. (<span class="keyword" >forall</span > d. d -> a -> b) -> c) -> <span class="keyword" >forall</span > c. c -> b <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Baz:Baz:3" class="instance expander" onclick="toggleSection('i:ic:Baz:Baz:3')" ></span > <a href="#" >Baz</a > (a, b, c)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Baz:Baz:3" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >baz</a > :: (a, b, c) -> (<span class="keyword" >forall</span > d. d -> d) -> (b, <span class="keyword" >forall</span > d. d -> (a, b, c)) -> (b, c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz'</a > :: b -> (<span class="keyword" >forall</span > d. d -> (a, b, c)) -> (<span class="keyword" >forall</span > d. d -> (a, b, c)) -> [(b, (a, b, c))] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz''</a > :: b -> (<span class="keyword" >forall</span > d. (<span class="keyword" >forall</span > e. e -> (a, b, c)) -> c) -> <span class="keyword" >forall</span > d. d -> b <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Baz:Baz:4" class="instance expander" onclick="toggleSection('i:ic:Baz:Baz:4')" ></span > <a href="#" >Baz</a > (<a href="#" >Quux</a > a b c)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Baz:Baz:4" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >baz</a > :: <a href="#" >Quux</a > a b c -> (<span class="keyword" >forall</span > d. d -> d) -> (b, <span class="keyword" >forall</span > d. d -> <a href="#" >Quux</a > a b c) -> (b, c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz'</a > :: b -> (<span class="keyword" >forall</span > d. d -> <a href="#" >Quux</a > a b c) -> (<span class="keyword" >forall</span > d. d -> <a href="#" >Quux</a > a b c) -> [(b, <a href="#" >Quux</a > a b c)] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz''</a > :: b -> (<span class="keyword" >forall</span > d. (<span class="keyword" >forall</span > e. e -> <a href="#" >Quux</a > a b c) -> c) -> <span class="keyword" >forall</span > d. d -> b <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Baz:Baz:5" class="instance expander" onclick="toggleSection('i:ic:Baz:Baz:5')" ></span > <a href="#" >Baz</a > (a, [b], b, a)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Baz:Baz:5" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >baz</a > :: (a, [b], b, a) -> (<span class="keyword" >forall</span > c. c -> c) -> (b, <span class="keyword" >forall</span > c. c -> (a, [b], b, a)) -> (b, c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz'</a > :: b -> (<span class="keyword" >forall</span > c. c -> (a, [b], b, a)) -> (<span class="keyword" >forall</span > c. c -> (a, [b], b, a)) -> [(b, (a, [b], b, a))] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz''</a > :: b -> (<span class="keyword" >forall</span > c. (<span class="keyword" >forall</span > d. d -> (a, [b], b, a)) -> c) -> <span class="keyword" >forall</span > c. c -> b <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ></table ></div ></div ></div ><div class="top" ><p class="src" ><span class="keyword" >data</span > <a id="t:Quux" class="def" >Quux</a > a b c <a href="#" class="selflink" >#</a ></p ><div class="subs constructors" ><p class="caption" >Constructors</p ><table ><tr ><td class="src" ><a id="v:Qx" class="def" >Qx</a > a</td ><td class="doc empty" ></td ></tr ><tr ><td class="src" ><a id="v:Qux" class="def" >Qux</a > a b</td ><td class="doc empty" ></td ></tr ><tr ><td class="src" ><a id="v:Quux" class="def" >Quux</a > a b c</td ><td class="doc empty" ></td ></tr ></table ></div ><div class="subs instances" ><p id="control.i:Quux" class="caption collapser" onclick="toggleSection('i:Quux')" >Instances</p ><div id="section.i:Quux" class="show" ><table ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:id:Quux:Foo:1" class="instance expander" onclick="toggleSection('i:id:Quux:Foo:1')" ></span > <a href="#" >Foo</a > (<a href="#" >Quux</a > a b)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:id:Quux:Foo:1" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >foo</a > :: <a href="#" >Quux</a > a b <a href="#" >Int</a > -> a -> <a href="#" >Quux</a > a b a <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >foo'</a > :: <a href="#" >Quux</a > a b (<a href="#" >Quux</a > a b a) -> <a href="#" >Int</a > -> <a href="#" >Quux</a > a b (<a href="#" >Quux</a > a b <a href="#" >Int</a >) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:id:Quux:Bar:2" class="instance expander" onclick="toggleSection('i:id:Quux:Bar:2')" ></span > <a href="#" >Bar</a > (<a href="#" >Quux</a > a c) (<a href="#" >Quux</a > a b c)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:id:Quux:Bar:2" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >bar</a > :: <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c) -> <a href="#" >Quux</a > a c <a href="#" >Bool</a > -> <a href="#" >Quux</a > a b c <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar'</a > :: <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c)) -> <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a c b)) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar0</a > :: (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c), <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c)) -> (<a href="#" >Quux</a > a c b, <a href="#" >Quux</a > a c c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >bar1</a > :: (<a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c), <a href="#" >Quux</a > a c (<a href="#" >Quux</a > a b c)) -> (<a href="#" >Quux</a > a c b, <a href="#" >Quux</a > a c c) <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:id:Quux:Baz:3" class="instance expander" onclick="toggleSection('i:id:Quux:Baz:3')" ></span > <a href="#" >Baz</a > (<a href="#" >Quux</a > a b c)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:id:Quux:Baz:3" class="inst-details hide" ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >baz</a > :: <a href="#" >Quux</a > a b c -> (<span class="keyword" >forall</span > d. d -> d) -> (b, <span class="keyword" >forall</span > d. d -> <a href="#" >Quux</a > a b c) -> (b, c) <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz'</a > :: b -> (<span class="keyword" >forall</span > d. d -> <a href="#" >Quux</a > a b c) -> (<span class="keyword" >forall</span > d. d -> <a href="#" >Quux</a > a b c) -> [(b, <a href="#" >Quux</a > a b c)] <a href="#" class="selflink" >#</a ></p ><p class="src" ><a href="#" >baz''</a > :: b -> (<span class="keyword" >forall</span > d. (<span class="keyword" >forall</span > e. e -> <a href="#" >Quux</a > a b c) -> c) -> <span class="keyword" >forall</span > d. d -> b <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:id:Quux:Thud:4" class="instance expander" onclick="toggleSection('i:id:Quux:Thud:4')" ></span > <span class="keyword" >data</span > <a href="#" >Thud</a > <a href="#" >Int</a > (<a href="#" >Quux</a > a [a] c)</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:id:Quux:Thud:4" class="inst-details hide" ><div class="src" ><span class="keyword" >data</span > <a href="#" >Thud</a > <a href="#" >Int</a > (<a href="#" >Quux</a > a [a] c) <ul class="inst" ><li class="inst" >= <a id="v:Thuud" class="def" >Thuud</a > a</li ><li class="inst" >| <a id="v:Thuuud" class="def" >Thuuud</a > <a href="#" >Int</a > <a href="#" >Int</a ></li ></ul ></div ></div ></td ></tr ></table ></div ></div ></div ><div class="top" ><p class="src" ><span class="keyword" >class</span > <a id="t:Norf" class="def" >Norf</a > a b <span class="keyword" >where</span > <a href="#" class="selflink" >#</a ></p ><div class="subs associated-types" ><p class="caption" >Associated Types</p ><p class="src" ><span class="keyword" >type</span > <a id="t:Plugh" class="def" >Plugh</a > a c b <a href="#" class="selflink" >#</a ></p ><p class="src" ><span class="keyword" >data</span > <a id="t:Thud" class="def" >Thud</a > a c <a href="#" class="selflink" >#</a ></p ></div ><div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a id="v:norf" class="def" >norf</a > :: <a href="#" >Plugh</a > a c b -> a -> (a -> c) -> b <a href="#" class="selflink" >#</a ></p ></div ><div class="subs instances" ><p id="control.i:Norf" class="caption collapser" onclick="toggleSection('i:Norf')" >Instances</p ><div id="section.i:Norf" class="show" ><table ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Norf:Norf:1" class="instance expander" onclick="toggleSection('i:ic:Norf:Norf:1')" ></span > <a href="#" >Norf</a > <a href="#" >Int</a > <a href="#" >Bool</a ></span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Norf:Norf:1" class="inst-details hide" ><div class="subs associated-types" ><p class="caption" >Associated Types</p ><p class="src" ><span class="keyword" >type</span > <a href="#" >Plugh</a > <a href="#" >Int</a > c <a href="#" >Bool</a > :: <a href="#" >*</a > <a href="#" class="selflink" >#</a ></p ><p class="src" ><span class="keyword" >data</span > <a href="#" >Thud</a > <a href="#" >Int</a > c :: <a href="#" >*</a > <a href="#" class="selflink" >#</a ></p ></div > <div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >norf</a > :: <a href="#" >Plugh</a > <a href="#" >Int</a > c <a href="#" >Bool</a > -> <a href="#" >Int</a > -> (<a href="#" >Int</a > -> c) -> <a href="#" >Bool</a > <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ><tr ><td class="src clearfix" ><span class="inst-left" ><span id="control.i:ic:Norf:Norf:2" class="instance expander" onclick="toggleSection('i:ic:Norf:Norf:2')" ></span > <a href="#" >Norf</a > [a] [b]</span > <a href="#" class="selflink" >#</a ></td ><td class="doc empty" ></td ></tr ><tr ><td colspan="2" ><div id="section.i:ic:Norf:Norf:2" class="inst-details hide" ><div class="subs associated-types" ><p class="caption" >Associated Types</p ><p class="src" ><span class="keyword" >type</span > <a href="#" >Plugh</a > [a] c [b] :: <a href="#" >*</a > <a href="#" class="selflink" >#</a ></p ><p class="src" ><span class="keyword" >data</span > <a href="#" >Thud</a > [a] c :: <a href="#" >*</a > <a href="#" class="selflink" >#</a ></p ></div > <div class="subs methods" ><p class="caption" >Methods</p ><p class="src" ><a href="#" >norf</a > :: <a href="#" >Plugh</a > [a] c [b] -> [a] -> ([a] -> c) -> [b] <a href="#" class="selflink" >#</a ></p ></div ></div ></td ></tr ></table ></div ></div ></div ></div ></div ><div id="footer" ></div ></body ></html >