This file is indexed.

/usr/share/doc/libghc-free-doc/html/Control-Comonad-Trans-Coiter.html is in libghc-free-doc 4.12.1-2build1.

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
<!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.Comonad.Trans.Coiter</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Control-Comonad-Trans-Coiter.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Control-Comonad-Trans-Coiter.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">free-4.12.1: Monads for free</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Copyright</th><td>(C) 2008-2013 Edward Kmett</td></tr><tr><th>License</th><td>BSD-style (see the file LICENSE)</td></tr><tr><th>Maintainer</th><td>Edward Kmett &lt;ekmett@gmail.com&gt;</td></tr><tr><th>Stability</th><td>provisional</td></tr><tr><th>Portability</th><td>MPTCs, fundeps</td></tr><tr><th>Safe Haskell</th><td>Safe</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Control.Comonad.Trans.Coiter</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">The coiterative comonad transformer</a></li><li><a href="#g:2">The coiterative comonad</a></li><li><a href="#g:3">Generating coiterative comonads</a></li><li><a href="#g:4">Cofree comonads</a></li><li><a href="#g:5">Examples</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>The coiterative comonad generated by a comonad</p></div></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">newtype</span> <a href="#t:CoiterT">CoiterT</a> w a = <a href="#v:CoiterT">CoiterT</a> {<ul class="subs"><li><a href="#v:runCoiterT">runCoiterT</a> :: w (a, <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)</li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:Coiter">Coiter</a> = <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor-Identity.html#t:Identity">Identity</a></li><li class="src short"><a href="#v:coiter">coiter</a> :: a -&gt; <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a -&gt; <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a</li><li class="src short"><a href="#v:runCoiter">runCoiter</a> :: <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a -&gt; (a, <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a)</li><li class="src short"><a href="#v:unfold">unfold</a> :: <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w =&gt; (w a -&gt; a) -&gt; w a -&gt; <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a</li><li class="src short"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> f, <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w) =&gt; <a href="#t:ComonadCofree">ComonadCofree</a> f w | w -&gt; f <span class="keyword">where</span><ul class="subs"><li><a href="#v:unwrap">unwrap</a> :: w a -&gt; f (w a)</li></ul></li></ul></div><div id="interface"><h1>Documentation</h1><div class="doc"><p>Coiterative comonads represent non-terminating, productive computations.</p><p>They are the dual notion of iterative monads. While iterative computations
 produce no values or eventually terminate with one, coiterative
 computations constantly produce values and they never terminate.</p><p>It's simpler form, <code><a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a></code>, is an infinite stream of data. <code><a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a></code>
 extends this so that each step of the computation can be performed in
 a comonadic context.</p></div><h1 id="g:1">The coiterative comonad transformer</h1><div class="top"><p class="src"><span class="keyword">newtype</span> <a name="t:CoiterT" class="def">CoiterT</a> w a <a href="src/Control-Comonad-Trans-Coiter.html#CoiterT" class="link">Source</a></p><div class="doc"><p>This is the coiterative comonad generated by a comonad</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:CoiterT" class="def">CoiterT</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:runCoiterT" class="def">runCoiterT</a> :: w (a, <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)</dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:CoiterT" class="caption collapser" onclick="toggleSection('i:CoiterT')">Instances</p><div id="section.i:CoiterT" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Hoist-Class.html#t:ComonadHoist">ComonadHoist</a> <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a></span> <a href="src/Control-Comonad-Trans-Coiter.html#line-129" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Trans-Class.html#t:ComonadTrans">ComonadTrans</a> <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a></span> <a href="src/Control-Comonad-Trans-Coiter.html#line-118" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Traced-Class.html#t:ComonadTraced">ComonadTraced</a> m w =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Traced-Class.html#t:ComonadTraced">ComonadTraced</a> m (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-132" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#t:ComonadStore">ComonadStore</a> s w =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Store-Class.html#t:ComonadStore">ComonadStore</a> s (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-136" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Env-Class.html#t:ComonadEnv">ComonadEnv</a> e w =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Env-Class.html#t:ComonadEnv">ComonadEnv</a> e (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-125" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor-Identity.html#t:Identity">Identity</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-121" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> w =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-104" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Foldable.html#t:Foldable">Foldable</a> w =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Foldable.html#t:Foldable">Foldable</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-112" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Traversable.html#t:Traversable">Traversable</a> w =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Traversable.html#t:Traversable">Traversable</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-115" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w =&gt; <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-107" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> w, <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Eq1">Eq1</a> w) =&gt; <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Eq1">Eq1</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-73" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> w, <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Ord1">Ord1</a> w) =&gt; <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Ord1">Ord1</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-76" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> w, <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Show1">Show1</a> w) =&gt; <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Show1">Show1</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-79" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> w, <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Read1">Read1</a> w) =&gt; <a href="file:///usr/share/doc/libghc-prelude-extras-doc/html/Prelude-Extras.html#t:Read1">Read1</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-83" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> (w (a, <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)) =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-158" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Typeable-Internal.html#t:Typeable">Typeable</a> (* -&gt; *) w, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Typeable-Internal.html#t:Typeable">Typeable</a> * a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Data.html#t:Data">Data</a> (w (a, <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)), <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Data.html#t:Data">Data</a> a) =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Data.html#t:Data">Data</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-190" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> (w (a, <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)) =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-162" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Read.html#t:Read">Read</a> (w (a, <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)) =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Read.html#t:Read">Read</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-154" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> (w (a, <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)) =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Text-Show.html#t:Show">Show</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a)</span> <a href="src/Control-Comonad-Trans-Coiter.html#line-150" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><h1 id="g:2">The coiterative comonad</h1><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Coiter" class="def">Coiter</a> = <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor-Identity.html#t:Identity">Identity</a> <a href="src/Control-Comonad-Trans-Coiter.html#Coiter" class="link">Source</a></p><div class="doc"><p>The coiterative comonad</p></div></div><div class="top"><p class="src"><a name="v:coiter" class="def">coiter</a> :: a -&gt; <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a -&gt; <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a <a href="src/Control-Comonad-Trans-Coiter.html#coiter" class="link">Source</a></p><div class="doc"><p>Prepends a result to a coiterative computation.</p><pre>runCoiter . uncurry coiter == id</pre></div></div><div class="top"><p class="src"><a name="v:runCoiter" class="def">runCoiter</a> :: <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a -&gt; (a, <a href="Control-Comonad-Trans-Coiter.html#t:Coiter">Coiter</a> a) <a href="src/Control-Comonad-Trans-Coiter.html#runCoiter" class="link">Source</a></p><div class="doc"><p>Extracts the first result from a coiterative computation.</p><pre>uncurry coiter . runCoiter == id</pre></div></div><h1 id="g:3">Generating coiterative comonads</h1><div class="top"><p class="src"><a name="v:unfold" class="def">unfold</a> :: <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w =&gt; (w a -&gt; a) -&gt; w a -&gt; <a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w a <a href="src/Control-Comonad-Trans-Coiter.html#unfold" class="link">Source</a></p><div class="doc"><p>Unfold a <code>CoiterT</code> comonad transformer from a cokleisli arrow and an initial comonadic seed.</p></div></div><h1 id="g:4">Cofree comonads</h1><div class="top"><p class="src"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> f, <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w) =&gt; <a name="t:ComonadCofree" class="def">ComonadCofree</a> f w | w -&gt; f <span class="keyword">where</span> <a href="src/Control-Comonad-Cofree-Class.html#ComonadCofree" class="link">Source</a></p><div class="doc"><p>Allows you to peel a layer off a cofree comonad.</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:unwrap" class="def">unwrap</a> :: w a -&gt; f (w a) <a href="src/Control-Comonad-Cofree-Class.html#unwrap" class="link">Source</a></p><div class="doc"><p>Remove a layer.</p></div></div><div class="subs instances"><p id="control.i:ComonadCofree" class="caption collapser" onclick="toggleSection('i:ComonadCofree')">Instances</p><div id="section.i:ComonadCofree" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-semigroups-doc/html/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a></span> <a href="src/Control-Comonad-Cofree-Class.html#line-33" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f w =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f (<a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Trans-Identity.html#t:IdentityT">IdentityT</a> w)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-40" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> f =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f (<a href="Control-Comonad-Cofree.html#t:Cofree">Cofree</a> f)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-125" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor-Identity.html#t:Identity">Identity</a> (<a href="Control-Comonad-Trans-Coiter.html#t:CoiterT">CoiterT</a> w)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-121" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f w, <a href="file:///usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Monoid.html#t:Monoid">Monoid</a> m) =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f (<a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Trans-Traced.html#t:TracedT">TracedT</a> m w)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-49" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f w =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f (<a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Trans-Store.html#t:StoreT">StoreT</a> s w)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-46" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f w =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f (<a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad-Trans-Env.html#t:EnvT">EnvT</a> e w)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-43" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Functor.html#t:Functor">Functor</a> f, <a href="file:///usr/share/doc/libghc-comonad-doc/html/Control-Comonad.html#t:Comonad">Comonad</a> w) =&gt; <a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> f (<a href="Control-Comonad-Trans-Cofree.html#t:CofreeT">CofreeT</a> f w)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-138" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Control-Comonad-Trans-Coiter.html#t:ComonadCofree">ComonadCofree</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Applicative.html#t:Const">Const</a> b) (<a href="file:///usr/share/doc/ghc-doc/html/libraries/ghc-prim-0.4.0.0/GHC-Tuple.html#t:-40--44--41-">(,)</a> b)</span> <a href="src/Control-Comonad-Cofree-Class.html#line-37" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><h1 id="g:5">Examples</h1><div class="doc"><p><a href="examples/NewtonCoiter.lhs">Newton's method</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.1</p></div></body></html>