This file is indexed.

/usr/share/doc/libghc-vector-doc/html/Data-Vector-Fusion-Stream-Monadic.html is in libghc-vector-doc 0.11.0.0-1.

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
11
12
13
14
15
16
17
18
19
<!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>Data.Vector.Fusion.Stream.Monadic</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_Data-Vector-Fusion-Stream-Monadic.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Data-Vector-Fusion-Stream-Monadic.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">vector-0.11.0.0: Efficient Arrays</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Copyright</th><td>(c) Roman Leshchinskiy 2008-2010</td></tr><tr><th>License</th><td>BSD-style</td></tr><tr><th>Maintainer</th><td>Roman Leshchinskiy &lt;rl@cse.unsw.edu.au&gt;</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Portability</th><td>non-portable</td></tr><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Data.Vector.Fusion.Stream.Monadic</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Length</a></li><li><a href="#g:2">Construction</a></li><li><a href="#g:3">Accessing elements</a></li><li><a href="#g:4">Substreams</a></li><li><a href="#g:5">Mapping</a></li><li><a href="#g:6">Zipping</a></li><li><a href="#g:7">Comparisons</a></li><li><a href="#g:8">Filtering</a></li><li><a href="#g:9">Searching</a></li><li><a href="#g:10">Folding</a></li><li><a href="#g:11">Specialised folds</a></li><li><a href="#g:12">Unfolding</a></li><li><a href="#g:13">Scans</a></li><li><a href="#g:14">Enumerations</a></li><li><a href="#g:15">Conversions</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Monadic stream combinators.</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">data</span> <a href="#t:Stream">Stream</a> m a = <span class="keyword">forall</span> s . <a href="#v:Stream">Stream</a> (s -&gt; m (<a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a)) s</li><li class="src short"><span class="keyword">data</span> <a href="#t:Step">Step</a> s a <span class="keyword">where</span><ul class="subs"><li><a href="#v:Yield">Yield</a> ::  a -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a</li><li><a href="#v:Skip">Skip</a> ::  s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a</li><li><a href="#v:Done">Done</a> ::  <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:SPEC">SPEC</a> :: *<ul class="subs"><li>= <a href="#v:SPEC">SPEC</a></li><li>| <a href="#v:SPEC2">SPEC2</a></li></ul></li><li class="src short"><a href="#v:length">length</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></li><li class="src short"><a href="#v:null">null</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:empty">empty</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:singleton">singleton</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:cons">cons</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:snoc">snoc</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:replicate">replicate</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:replicateM">replicateM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:generate">generate</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:generateM">generateM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:-43--43-">(++)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:head">head</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:last">last</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:-33--33-">(!!)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m a</li><li class="src short"><a href="#v:-33--63-">(!?)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a)</li><li class="src short"><a href="#v:slice">slice</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:init">init</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:tail">tail</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:take">take</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:drop">drop</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:map">map</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b</li><li class="src short"><a href="#v:mapM">mapM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b</li><li class="src short"><a href="#v:mapM_">mapM_</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m ()</li><li class="src short"><a href="#v:trans">trans</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m') =&gt; (<span class="keyword">forall</span> z. m z -&gt; m' z) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m' a</li><li class="src short"><a href="#v:unbox">unbox</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (<a href="Data-Vector-Fusion-Util.html#t:Box">Box</a> a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:concatMap">concatMap</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b</li><li class="src short"><a href="#v:flatten">flatten</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m s) -&gt; (s -&gt; m (<a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s b)) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b</li><li class="src short"><a href="#v:indexed">indexed</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>, a)</li><li class="src short"><a href="#v:indexedR">indexedR</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>, a)</li><li class="src short"><a href="#v:zipWithM_">zipWithM_</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m c) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m ()</li><li class="src short"><a href="#v:zipWithM">zipWithM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m c) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c</li><li class="src short"><a href="#v:zipWith3M">zipWith3M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; m d) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d</li><li class="src short"><a href="#v:zipWith4M">zipWith4M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; m e) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e</li><li class="src short"><a href="#v:zipWith5M">zipWith5M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; m f) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f</li><li class="src short"><a href="#v:zipWith6M">zipWith6M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; f -&gt; m g) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m g</li><li class="src short"><a href="#v:zipWith">zipWith</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c</li><li class="src short"><a href="#v:zipWith3">zipWith3</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d</li><li class="src short"><a href="#v:zipWith4">zipWith4</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e</li><li class="src short"><a href="#v:zipWith5">zipWith5</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; f) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f</li><li class="src short"><a href="#v:zipWith6">zipWith6</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; f -&gt; g) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m g</li><li class="src short"><a href="#v:zip">zip</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b)</li><li class="src short"><a href="#v:zip3">zip3</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c)</li><li class="src short"><a href="#v:zip4">zip4</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c, d)</li><li class="src short"><a href="#v:zip5">zip5</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c, d, e)</li><li class="src short"><a href="#v:zip6">zip6</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c, d, e, f)</li><li class="src short"><a href="#v:eq">eq</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> a) =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:cmp">cmp</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> a) =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ordering">Ordering</a></li><li class="src short"><a href="#v:filter">filter</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:filterM">filterM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:takeWhile">takeWhile</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:takeWhileM">takeWhileM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:dropWhile">dropWhile</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:dropWhileM">dropWhileM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:elem">elem</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> a) =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:notElem">notElem</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> a) =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:find">find</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a)</li><li class="src short"><a href="#v:findM">findM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a)</li><li class="src short"><a href="#v:findIndex">findIndex</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<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/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>)</li><li class="src short"><a href="#v:findIndexM">findIndexM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<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/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>)</li><li class="src short"><a href="#v:foldl">foldl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a</li><li class="src short"><a href="#v:foldlM">foldlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a</li><li class="src short"><a href="#v:foldl1">foldl1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:foldl1M">foldl1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:foldM">foldM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a</li><li class="src short"><a href="#v:fold1M">fold1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:foldl-39-">foldl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a</li><li class="src short"><a href="#v:foldlM-39-">foldlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a</li><li class="src short"><a href="#v:foldl1-39-">foldl1'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:foldl1M-39-">foldl1M'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:foldM-39-">foldM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a</li><li class="src short"><a href="#v:fold1M-39-">fold1M'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:foldr">foldr</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; b) -&gt; b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m b</li><li class="src short"><a href="#v:foldrM">foldrM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m b) -&gt; b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m b</li><li class="src short"><a href="#v:foldr1">foldr1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:foldr1M">foldr1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a</li><li class="src short"><a href="#v:and">and</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:or">or</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:concatMapM">concatMapM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m (<a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b)) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b</li><li class="src short"><a href="#v:unfoldr">unfoldr</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (s -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s)) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:unfoldrM">unfoldrM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (s -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s))) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:unfoldrN">unfoldrN</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (s -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s)) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:unfoldrNM">unfoldrNM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (s -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s))) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:iterateN">iterateN</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (a -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:iterateNM">iterateNM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (a -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:prescanl">prescanl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:prescanlM">prescanlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:prescanl-39-">prescanl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:prescanlM-39-">prescanlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:postscanl">postscanl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:postscanlM">postscanlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:postscanl-39-">postscanl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:postscanlM-39-">postscanlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanl">scanl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanlM">scanlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanl-39-">scanl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanlM-39-">scanlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanl1">scanl1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanl1M">scanl1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanl1-39-">scanl1'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:scanl1M-39-">scanl1M'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:enumFromStepN">enumFromStepN</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m) =&gt; a -&gt; a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:enumFromTo">enumFromTo</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Enum">Enum</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m) =&gt; a -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:enumFromThenTo">enumFromThenTo</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Enum">Enum</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m) =&gt; a -&gt; a -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:toList">toList</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m [a]</li><li class="src short"><a href="#v:fromList">fromList</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; [a] -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li><li class="src short"><a href="#v:fromListN">fromListN</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; [a] -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:Stream" class="def">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#Stream" class="link">Source</a></p><div class="doc"><p>Monadic streams</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><span class="keyword">forall</span> s . <a name="v:Stream" class="def">Stream</a> (s -&gt; m (<a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a)) s</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:Stream" class="caption collapser" onclick="toggleSection('i:Stream')">Instances</p><div id="section.i:Stream" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&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="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m)</span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#line-394" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:Step" class="def">Step</a> s a <span class="keyword">where</span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#Step" class="link">Source</a></p><div class="doc"><p>Result of taking a single step in a stream</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:Yield" class="def">Yield</a> ::  a -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:Skip" class="def">Skip</a> ::  s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:Done" class="def">Done</a> ::  <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s a</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:Step" class="caption collapser" onclick="toggleSection('i:Step')">Instances</p><div id="section.i:Step" class="show"><table><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> (<a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s)</span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#line-127" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:SPEC" class="def">SPEC</a> :: *</p><div class="doc"><p><code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:SPEC">SPEC</a></code> is used by GHC in the <code>SpecConstr</code> pass in order to inform
 the compiler when to be particularly aggressive. In particular, it
 tells GHC to specialize regardless of size or the number of
 specializations. However, not all loops fall into this category.</p><p>Libraries can specify this by using <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:SPEC">SPEC</a></code> data type to inform which
 loops should be aggressively specialized.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:SPEC" class="def">SPEC</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:SPEC2" class="def">SPEC2</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div><h1 id="g:1">Length</h1><div class="top"><p class="src"><a name="v:length" class="def">length</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#length" class="link">Source</a></p><div class="doc"><p>Length of a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:null" class="def">null</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#null" class="link">Source</a></p><div class="doc"><p>Check if a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> is empty</p></div></div><h1 id="g:2">Construction</h1><div class="top"><p class="src"><a name="v:empty" class="def">empty</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#empty" class="link">Source</a></p><div class="doc"><p>Empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:singleton" class="def">singleton</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#singleton" class="link">Source</a></p><div class="doc"><p>Singleton <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:cons" class="def">cons</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#cons" class="link">Source</a></p><div class="doc"><p>Prepend an element</p></div></div><div class="top"><p class="src"><a name="v:snoc" class="def">snoc</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#snoc" class="link">Source</a></p><div class="doc"><p>Append an element</p></div></div><div class="top"><p class="src"><a name="v:replicate" class="def">replicate</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#replicate" class="link">Source</a></p><div class="doc"><p>Replicate a value to a given length</p></div></div><div class="top"><p class="src"><a name="v:replicateM" class="def">replicateM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#replicateM" class="link">Source</a></p><div class="doc"><p>Yield a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> of values obtained by performing the monadic action the
 given number of times</p></div></div><div class="top"><p class="src"><a name="v:generate" class="def">generate</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#generate" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:generateM" class="def">generateM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#generateM" class="link">Source</a></p><div class="doc"><p>Generate a stream from its indices</p></div></div><div class="top"><p class="src"><a name="v:-43--43-" class="def">(++)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <span class="fixity">infixr 5</span><span class="rightedge"></span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#%2B%2B" class="link">Source</a></p><div class="doc"><p>Concatenate two <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code>s</p></div></div><h1 id="g:3">Accessing elements</h1><div class="top"><p class="src"><a name="v:head" class="def">head</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#head" class="link">Source</a></p><div class="doc"><p>First element of the <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> or error if empty</p></div></div><div class="top"><p class="src"><a name="v:last" class="def">last</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#last" class="link">Source</a></p><div class="doc"><p>Last element of the <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> or error if empty</p></div></div><div class="top"><p class="src"><a name="v:-33--33-" class="def">(!!)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m a <span class="fixity">infixl 9</span><span class="rightedge"></span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#%21%21" class="link">Source</a></p><div class="doc"><p>Element at the given position</p></div></div><div class="top"><p class="src"><a name="v:-33--63-" class="def">(!?)</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a) <span class="fixity">infixl 9</span><span class="rightedge"></span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#%21%3F" class="link">Source</a></p><div class="doc"><p>Element at the given position or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code> if out of bounds</p></div></div><h1 id="g:4">Substreams</h1><div class="top"><p class="src"><a name="v:slice" class="def">slice</a> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#slice" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">=&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></td><td class="doc"><p>starting index</p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></td><td class="doc"><p>length</p></td></tr><tr><td class="src">-&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Extract a substream of the given length starting at the given position.</p></div></div><div class="top"><p class="src"><a name="v:init" class="def">init</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#init" class="link">Source</a></p><div class="doc"><p>All but the last element</p></div></div><div class="top"><p class="src"><a name="v:tail" class="def">tail</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#tail" class="link">Source</a></p><div class="doc"><p>All but the first element</p></div></div><div class="top"><p class="src"><a name="v:take" class="def">take</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#take" class="link">Source</a></p><div class="doc"><p>The first <code>n</code> elements</p></div></div><div class="top"><p class="src"><a name="v:drop" class="def">drop</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#drop" class="link">Source</a></p><div class="doc"><p>All but the first <code>n</code> elements</p></div></div><h1 id="g:5">Mapping</h1><div class="top"><p class="src"><a name="v:map" class="def">map</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b <a href="src/Data-Vector-Fusion-Stream-Monadic.html#map" class="link">Source</a></p><div class="doc"><p>Map a function over a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:mapM" class="def">mapM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b <a href="src/Data-Vector-Fusion-Stream-Monadic.html#mapM" class="link">Source</a></p><div class="doc"><p>Map a monadic function over a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:mapM_" class="def">mapM_</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m () <a href="src/Data-Vector-Fusion-Stream-Monadic.html#mapM_" class="link">Source</a></p><div class="doc"><p>Execute a monadic action for each element of the <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:trans" class="def">trans</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m') =&gt; (<span class="keyword">forall</span> z. m z -&gt; m' z) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m' a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#trans" class="link">Source</a></p><div class="doc"><p>Transform a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> to use a different monad</p></div></div><div class="top"><p class="src"><a name="v:unbox" class="def">unbox</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (<a href="Data-Vector-Fusion-Util.html#t:Box">Box</a> a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#unbox" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:concatMap" class="def">concatMap</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b <a href="src/Data-Vector-Fusion-Stream-Monadic.html#concatMap" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:flatten" class="def">flatten</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m s) -&gt; (s -&gt; m (<a href="Data-Vector-Fusion-Stream-Monadic.html#t:Step">Step</a> s b)) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b <a href="src/Data-Vector-Fusion-Stream-Monadic.html#flatten" class="link">Source</a></p><div class="doc"><p>Create a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> of values from a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> of streamable things</p></div></div><h1 id="g:6">Zipping</h1><div class="top"><p class="src"><a name="v:indexed" class="def">indexed</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>, a) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#indexed" class="link">Source</a></p><div class="doc"><p>Pair each element in a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with its index</p></div></div><div class="top"><p class="src"><a name="v:indexedR" class="def">indexedR</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>, a) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#indexedR" class="link">Source</a></p><div class="doc"><p>Pair each element in a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with its index, starting from the right
 and counting down</p></div></div><div class="top"><p class="src"><a name="v:zipWithM_" class="def">zipWithM_</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m c) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m () <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWithM_" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWithM" class="def">zipWithM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m c) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWithM" class="link">Source</a></p><div class="doc"><p>Zip two <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code>s with the given monadic function</p></div></div><div class="top"><p class="src"><a name="v:zipWith3M" class="def">zipWith3M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; m d) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith3M" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith4M" class="def">zipWith4M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; m e) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith4M" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith5M" class="def">zipWith5M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; m f) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith5M" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith6M" class="def">zipWith6M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; f -&gt; m g) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m g <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith6M" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith" class="def">zipWith</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith3" class="def">zipWith3</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith3" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith4" class="def">zipWith4</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith4" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith5" class="def">zipWith5</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; f) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith5" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zipWith6" class="def">zipWith6</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; c -&gt; d -&gt; e -&gt; f -&gt; g) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m g <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zipWith6" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zip" class="def">zip</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zip" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zip3" class="def">zip3</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zip3" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zip4" class="def">zip4</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c, d) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zip4" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zip5" class="def">zip5</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c, d, e) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zip5" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zip6" class="def">zip6</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m c -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m d -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m e -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m f -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m (a, b, c, d, e, f) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#zip6" class="link">Source</a></p></div><h1 id="g:7">Comparisons</h1><div class="top"><p class="src"><a name="v:eq" class="def">eq</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> a) =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#eq" class="link">Source</a></p><div class="doc"><p>Check if two <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code>s are equal</p></div></div><div class="top"><p class="src"><a name="v:cmp" class="def">cmp</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> a) =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ordering">Ordering</a> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#cmp" class="link">Source</a></p><div class="doc"><p>Lexicographically compare two <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code>s</p></div></div><h1 id="g:8">Filtering</h1><div class="top"><p class="src"><a name="v:filter" class="def">filter</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#filter" class="link">Source</a></p><div class="doc"><p>Drop elements which do not satisfy the predicate</p></div></div><div class="top"><p class="src"><a name="v:filterM" class="def">filterM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#filterM" class="link">Source</a></p><div class="doc"><p>Drop elements which do not satisfy the monadic predicate</p></div></div><div class="top"><p class="src"><a name="v:takeWhile" class="def">takeWhile</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#takeWhile" class="link">Source</a></p><div class="doc"><p>Longest prefix of elements that satisfy the predicate</p></div></div><div class="top"><p class="src"><a name="v:takeWhileM" class="def">takeWhileM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#takeWhileM" class="link">Source</a></p><div class="doc"><p>Longest prefix of elements that satisfy the monadic predicate</p></div></div><div class="top"><p class="src"><a name="v:dropWhile" class="def">dropWhile</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#dropWhile" class="link">Source</a></p><div class="doc"><p>Drop the longest prefix of elements that satisfy the predicate</p></div></div><div class="top"><p class="src"><a name="v:dropWhileM" class="def">dropWhileM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#dropWhileM" class="link">Source</a></p><div class="doc"><p>Drop the longest prefix of elements that satisfy the monadic predicate</p></div></div><h1 id="g:9">Searching</h1><div class="top"><p class="src"><a name="v:elem" class="def">elem</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> a) =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#elem" class="link">Source</a></p><div class="doc"><p>Check whether the <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> contains an element</p></div></div><div class="top"><p class="src"><a name="v:notElem" class="def">notElem</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> a) =&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <span class="fixity">infix 4</span><span class="rightedge"></span> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#notElem" class="link">Source</a></p><div class="doc"><p>Inverse of <code><a href="Data-Vector-Fusion-Stream-Monadic.html#v:elem">elem</a></code></p></div></div><div class="top"><p class="src"><a name="v:find" class="def">find</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#find" class="link">Source</a></p><div class="doc"><p>Yield <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Just">Just</a></code> the first element that satisfies the predicate or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code>
 if no such element exists.</p></div></div><div class="top"><p class="src"><a name="v:findM" class="def">findM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> a) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#findM" class="link">Source</a></p><div class="doc"><p>Yield <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Just">Just</a></code> the first element that satisfies the monadic predicate or
 <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code> if no such element exists.</p></div></div><div class="top"><p class="src"><a name="v:findIndex" class="def">findIndex</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<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/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#findIndex" class="link">Source</a></p><div class="doc"><p>Yield <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Just">Just</a></code> the index of the first element that satisfies the predicate
 or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code> if no such element exists.</p></div></div><div class="top"><p class="src"><a name="v:findIndexM" class="def">findIndexM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m (<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/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a>) <a href="src/Data-Vector-Fusion-Stream-Monadic.html#findIndexM" class="link">Source</a></p><div class="doc"><p>Yield <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Just">Just</a></code> the index of the first element that satisfies the monadic
 predicate or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code> if no such element exists.</p></div></div><h1 id="g:10">Folding</h1><div class="top"><p class="src"><a name="v:foldl" class="def">foldl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldl" class="link">Source</a></p><div class="doc"><p>Left fold</p></div></div><div class="top"><p class="src"><a name="v:foldlM" class="def">foldlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldlM" class="link">Source</a></p><div class="doc"><p>Left fold with a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:foldl1" class="def">foldl1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldl1" class="link">Source</a></p><div class="doc"><p>Left fold over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:foldl1M" class="def">foldl1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldl1M" class="link">Source</a></p><div class="doc"><p>Left fold over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:foldM" class="def">foldM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldM" class="link">Source</a></p><div class="doc"><p>Same as <code><a href="Data-Vector-Fusion-Stream-Monadic.html#v:foldlM">foldlM</a></code></p></div></div><div class="top"><p class="src"><a name="v:fold1M" class="def">fold1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#fold1M" class="link">Source</a></p><div class="doc"><p>Same as <code><a href="Data-Vector-Fusion-Stream-Monadic.html#v:foldl1M">foldl1M</a></code></p></div></div><div class="top"><p class="src"><a name="v:foldl-39-" class="def">foldl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldl%27" class="link">Source</a></p><div class="doc"><p>Left fold with a strict accumulator</p></div></div><div class="top"><p class="src"><a name="v:foldlM-39-" class="def">foldlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldlM%27" class="link">Source</a></p><div class="doc"><p>Left fold with a strict accumulator and a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:foldl1-39-" class="def">foldl1'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldl1%27" class="link">Source</a></p><div class="doc"><p>Left fold over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with a strict accumulator</p></div></div><div class="top"><p class="src"><a name="v:foldl1M-39-" class="def">foldl1M'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldl1M%27" class="link">Source</a></p><div class="doc"><p>Left fold over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with a strict accumulator and a
 monadic operator</p></div></div><div class="top"><p class="src"><a name="v:foldM-39-" class="def">foldM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldM%27" class="link">Source</a></p><div class="doc"><p>Same as <code><a href="Data-Vector-Fusion-Stream-Monadic.html#v:foldlM-39-">foldlM'</a></code></p></div></div><div class="top"><p class="src"><a name="v:fold1M-39-" class="def">fold1M'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#fold1M%27" class="link">Source</a></p><div class="doc"><p>Same as <code><a href="Data-Vector-Fusion-Stream-Monadic.html#v:foldl1M-39-">foldl1M'</a></code></p></div></div><div class="top"><p class="src"><a name="v:foldr" class="def">foldr</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; b) -&gt; b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m b <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldr" class="link">Source</a></p><div class="doc"><p>Right fold</p></div></div><div class="top"><p class="src"><a name="v:foldrM" class="def">foldrM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m b) -&gt; b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m b <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldrM" class="link">Source</a></p><div class="doc"><p>Right fold with a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:foldr1" class="def">foldr1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldr1" class="link">Source</a></p><div class="doc"><p>Right fold over a non-empty stream</p></div></div><div class="top"><p class="src"><a name="v:foldr1M" class="def">foldr1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#foldr1M" class="link">Source</a></p><div class="doc"><p>Right fold over a non-empty stream with a monadic operator</p></div></div><h1 id="g:11">Specialised folds</h1><div class="top"><p class="src"><a name="v:and" class="def">and</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#and" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:or" class="def">or</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> -&gt; m <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Data-Vector-Fusion-Stream-Monadic.html#or" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:concatMapM" class="def">concatMapM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; m (<a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b)) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b <a href="src/Data-Vector-Fusion-Stream-Monadic.html#concatMapM" class="link">Source</a></p></div><h1 id="g:12">Unfolding</h1><div class="top"><p class="src"><a name="v:unfoldr" class="def">unfoldr</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (s -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s)) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#unfoldr" class="link">Source</a></p><div class="doc"><p>Unfold</p></div></div><div class="top"><p class="src"><a name="v:unfoldrM" class="def">unfoldrM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (s -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s))) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#unfoldrM" class="link">Source</a></p><div class="doc"><p>Unfold with a monadic function</p></div></div><div class="top"><p class="src"><a name="v:unfoldrN" class="def">unfoldrN</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (s -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s)) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#unfoldrN" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:unfoldrNM" class="def">unfoldrNM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (s -&gt; m (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (a, s))) -&gt; s -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#unfoldrNM" class="link">Source</a></p><div class="doc"><p>Unfold at most <code>n</code> elements with a monadic functions</p></div></div><div class="top"><p class="src"><a name="v:iterateN" class="def">iterateN</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (a -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#iterateN" class="link">Source</a></p><div class="doc"><p>Apply function n times to value. Zeroth element is original value.</p></div></div><div class="top"><p class="src"><a name="v:iterateNM" class="def">iterateNM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; (a -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#iterateNM" class="link">Source</a></p><div class="doc"><p>Apply monadic function n times to value. Zeroth element is original value.</p></div></div><h1 id="g:13">Scans</h1><div class="top"><p class="src"><a name="v:prescanl" class="def">prescanl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#prescanl" class="link">Source</a></p><div class="doc"><p>Prefix scan</p></div></div><div class="top"><p class="src"><a name="v:prescanlM" class="def">prescanlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#prescanlM" class="link">Source</a></p><div class="doc"><p>Prefix scan with a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:prescanl-39-" class="def">prescanl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#prescanl%27" class="link">Source</a></p><div class="doc"><p>Prefix scan with strict accumulator</p></div></div><div class="top"><p class="src"><a name="v:prescanlM-39-" class="def">prescanlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#prescanlM%27" class="link">Source</a></p><div class="doc"><p>Prefix scan with strict accumulator and a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:postscanl" class="def">postscanl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#postscanl" class="link">Source</a></p><div class="doc"><p>Suffix scan</p></div></div><div class="top"><p class="src"><a name="v:postscanlM" class="def">postscanlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#postscanlM" class="link">Source</a></p><div class="doc"><p>Suffix scan with a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:postscanl-39-" class="def">postscanl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#postscanl%27" class="link">Source</a></p><div class="doc"><p>Suffix scan with strict accumulator</p></div></div><div class="top"><p class="src"><a name="v:postscanlM-39-" class="def">postscanlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#postscanlM%27" class="link">Source</a></p><div class="doc"><p>Suffix scan with strict acccumulator and a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:scanl" class="def">scanl</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanl" class="link">Source</a></p><div class="doc"><p>Haskell-style scan</p></div></div><div class="top"><p class="src"><a name="v:scanlM" class="def">scanlM</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanlM" class="link">Source</a></p><div class="doc"><p>Haskell-style scan with a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:scanl-39-" class="def">scanl'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanl%27" class="link">Source</a></p><div class="doc"><p>Haskell-style scan with strict accumulator</p></div></div><div class="top"><p class="src"><a name="v:scanlM-39-" class="def">scanlM'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; b -&gt; m a) -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m b -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanlM%27" class="link">Source</a></p><div class="doc"><p>Haskell-style scan with strict accumulator and a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:scanl1" class="def">scanl1</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanl1" class="link">Source</a></p><div class="doc"><p>Scan over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:scanl1M" class="def">scanl1M</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanl1M" class="link">Source</a></p><div class="doc"><p>Scan over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with a monadic operator</p></div></div><div class="top"><p class="src"><a name="v:scanl1-39-" class="def">scanl1'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanl1%27" class="link">Source</a></p><div class="doc"><p>Scan over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with a strict accumulator</p></div></div><div class="top"><p class="src"><a name="v:scanl1M-39-" class="def">scanl1M'</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; (a -&gt; a -&gt; m a) -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#scanl1M%27" class="link">Source</a></p><div class="doc"><p>Scan over a non-empty <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> with a strict accumulator and a monadic
 operator</p></div></div><h1 id="g:14">Enumerations</h1><div class="top"><p class="src"><a name="v:enumFromStepN" class="def">enumFromStepN</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Num">Num</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m) =&gt; a -&gt; a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#enumFromStepN" class="link">Source</a></p><div class="doc"><p>Yield a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> of the given length containing the values <code>x</code>, <code>x+y</code>,
 <code>x+y+y</code> etc.</p></div></div><div class="top"><p class="src"><a name="v:enumFromTo" class="def">enumFromTo</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Enum">Enum</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m) =&gt; a -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#enumFromTo" class="link">Source</a></p><div class="doc"><p>Enumerate values</p><p><em>WARNING:</em> This operation can be very inefficient. If at all possible, use
 <code><a href="Data-Vector-Fusion-Stream-Monadic.html#v:enumFromStepN">enumFromStepN</a></code> instead.</p></div></div><div class="top"><p class="src"><a name="v:enumFromThenTo" class="def">enumFromThenTo</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Prelude.html#t:Enum">Enum</a> a, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m) =&gt; a -&gt; a -&gt; a -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#enumFromThenTo" class="link">Source</a></p><div class="doc"><p>Enumerate values with a given step.</p><p><em>WARNING:</em> This operation is very inefficient. If at all possible, use
 <code><a href="Data-Vector-Fusion-Stream-Monadic.html#v:enumFromStepN">enumFromStepN</a></code> instead.</p></div></div><h1 id="g:15">Conversions</h1><div class="top"><p class="src"><a name="v:toList" class="def">toList</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a -&gt; m [a] <a href="src/Data-Vector-Fusion-Stream-Monadic.html#toList" class="link">Source</a></p><div class="doc"><p>Convert a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code> to a list</p></div></div><div class="top"><p class="src"><a name="v:fromList" class="def">fromList</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; [a] -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#fromList" class="link">Source</a></p><div class="doc"><p>Convert a list to a <code><a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a></code></p></div></div><div class="top"><p class="src"><a name="v:fromListN" class="def">fromListN</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Control-Monad.html#t:Monad">Monad</a> m =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; [a] -&gt; <a href="Data-Vector-Fusion-Stream-Monadic.html#t:Stream">Stream</a> m a <a href="src/Data-Vector-Fusion-Stream-Monadic.html#fromListN" class="link">Source</a></p><div class="doc"><p>Convert the first <code>n</code> elements of a list to a <code>Bundle</code></p></div></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>