<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--Rendered using the Haskell Html Library v0.2--> <HTML ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE >Data.Array.Parallel.Unlifted.Parallel</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ><SCRIPT TYPE="text/javascript" >window.onload = function () {setSynopsis("mini_Data-Array-Parallel-Unlifted-Parallel.html")};</SCRIPT ></HEAD ><BODY ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="topbar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title" >dph-prim-par-0.3: Parallel Primitives for Data-Parallel Haskell.</TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A ></TD ><TD CLASS="topbut" ><A HREF="doc-index.html" >Index</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="modulebar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><FONT SIZE="6" >Data.Array.Parallel.Unlifted.Parallel</FONT ></TD ><TD ALIGN="right" ><TABLE CLASS="narrow" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="infohead" >Portability</TD ><TD CLASS="infoval" >portable</TD ></TR ><TR ><TD CLASS="infohead" >Stability</TD ><TD CLASS="infoval" >experimental</TD ></TR ><TR ><TD CLASS="infohead" >Maintainer</TD ><TD CLASS="infoval" >Roman Leshchinskiy <rl@cse.unsw.edu.au></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Description</TD ></TR ><TR ><TD CLASS="doc" ><P >Description --------------------------------------------------------------- </P ><P >Parallel operations on unlifted arrays </P ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Synopsis</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="#v%3AbpermuteUP" >bpermuteUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AupdateUP" >updateUP</A > :: <SPAN CLASS="keyword" >forall</SPAN > a. <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > (<A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > <A HREF="../dph-base/Data-Array-Parallel-Base.html#t%3A%3A%2A%3A" >:*:</A > a) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AenumFromToUP" >enumFromToUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../base/Prelude.html#t%3AEnum" >Enum</A > a) => a -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AenumFromThenToUP" >enumFromThenToUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../base/Prelude.html#t%3AEnum" >Enum</A > a) => a -> a -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AenumFromStepLenUP" >enumFromStepLenUP</A > :: <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmapUP" >mapUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b) => (a -> b) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > b</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfilterUP" >filterUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => (a -> <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApackUP" >packUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AzipWithUP" >zipWithUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > c) => (a -> b -> c) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > b -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > c</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfoldUP" >foldUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > a) => (a -> a -> a) -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AscanUP" >scanUP</A > :: (<A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a) => (a -> a -> a) -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AandUP" >andUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A > -> <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AsumUP" >sumUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > a, <A HREF="../base/Prelude.html#t%3ANum" >Num</A > a) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmapSUP" >mapSUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b) => (a -> b) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > b</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfilterSUP" >filterSUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => (e -> <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApackCUP" >packCUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AzipWithSUP" >zipWithSUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > c) => (a -> b -> c) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > b -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > c</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfoldSUP" >foldSUP</A > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b) => (b -> a -> b) -> b -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > b</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AsumSUP" >sumSUP</A > :: (<A HREF="../base/Prelude.html#t%3ANum" >Num</A > e, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AbpermuteSUP%27" >bpermuteSUP'</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AenumFromThenToSUP" >enumFromThenToSUP</A > :: (<A HREF="../base/Prelude.html#t%3AEnum" >Enum</A > e, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AreplicateSUP" >replicateSUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AindexedSUP" >indexedSUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > (<A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > <A HREF="../dph-base/Data-Array-Parallel-Base.html#t%3A%3A%2A%3A" >:*:</A > e)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" >jsTest</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AindexedUP" >indexedUP</A > :: (<A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > e, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > (<A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > <A HREF="../dph-base/Data-Array-Parallel-Base.html#t%3A%3A%2A%3A" >:*:</A > e)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AreplicateUP" >replicateUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AreplicateEachUnbalancedUP" >replicateEachUnbalancedUP</A > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdropUP" >dropUP</A > :: <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Documentation</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:bpermuteUP" ><A NAME="v%3AbpermuteUP" ></A ></A ><B >bpermuteUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:updateUP" ><A NAME="v%3AupdateUP" ></A ></A ><B >updateUP</B > :: <SPAN CLASS="keyword" >forall</SPAN > a. <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > (<A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > <A HREF="../dph-base/Data-Array-Parallel-Base.html#t%3A%3A%2A%3A" >:*:</A > a) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:enumFromToUP" ><A NAME="v%3AenumFromToUP" ></A ></A ><B >enumFromToUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../base/Prelude.html#t%3AEnum" >Enum</A > a) => a -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:enumFromThenToUP" ><A NAME="v%3AenumFromThenToUP" ></A ></A ><B >enumFromThenToUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../base/Prelude.html#t%3AEnum" >Enum</A > a) => a -> a -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:enumFromStepLenUP" ><A NAME="v%3AenumFromStepLenUP" ></A ></A ><B >enumFromStepLenUP</B > :: <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:mapUP" ><A NAME="v%3AmapUP" ></A ></A ><B >mapUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b) => (a -> b) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > b</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:filterUP" ><A NAME="v%3AfilterUP" ></A ></A ><B >filterUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => (a -> <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:packUP" ><A NAME="v%3ApackUP" ></A ></A ><B >packUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="doc" >Extract all elements from an array according to a given flag array </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:zipWithUP" ><A NAME="v%3AzipWithUP" ></A ></A ><B >zipWithUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > c) => (a -> b -> c) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > b -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > c</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:foldUP" ><A NAME="v%3AfoldUP" ></A ></A ><B >foldUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > a) => (a -> a -> a) -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:scanUP" ><A NAME="v%3AscanUP" ></A ></A ><B >scanUP</B > :: (<A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a) => (a -> a -> a) -> a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:andUP" ><A NAME="v%3AandUP" ></A ></A ><B >andUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A > -> <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:sumUP" ><A NAME="v%3AsumUP" ></A ></A ><B >sumUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > a, <A HREF="../base/Prelude.html#t%3ANum" >Num</A > a) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:mapSUP" ><A NAME="v%3AmapSUP" ></A ></A ><B >mapSUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b) => (a -> b) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > b</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:filterSUP" ><A NAME="v%3AfilterSUP" ></A ></A ><B >filterSUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => (e -> <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="doc" >Filter segmented array </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:packCUP" ><A NAME="v%3ApackCUP" ></A ></A ><B >packCUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:zipWithSUP" ><A NAME="v%3AzipWithSUP" ></A ></A ><B >zipWithSUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > c) => (a -> b -> c) -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > b -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > c</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:foldSUP" ><A NAME="v%3AfoldSUP" ></A ></A ><B >foldSUP</B > :: (<A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > b) => (b -> a -> b) -> b -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > b</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:sumSUP" ><A NAME="v%3AsumSUP" ></A ></A ><B >sumSUP</B > :: (<A HREF="../base/Prelude.html#t%3ANum" >Num</A > e, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:bpermuteSUP'" ><A NAME="v%3AbpermuteSUP%27" ></A ></A ><B >bpermuteSUP'</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > a => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > a -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:enumFromThenToSUP" ><A NAME="v%3AenumFromThenToSUP" ></A ></A ><B >enumFromThenToSUP</B > :: (<A HREF="../base/Prelude.html#t%3AEnum" >Enum</A > e, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="doc" >Yield a segmented enumerated array using a specific step (unbalanced) </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:replicateSUP" ><A NAME="v%3AreplicateSUP" ></A ></A ><B >replicateSUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:indexedSUP" ><A NAME="v%3AindexedSUP" ></A ></A ><B >indexedSUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3ASUArr" >SUArr</A > (<A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > <A HREF="../dph-base/Data-Array-Parallel-Base.html#t%3A%3A%2A%3A" >:*:</A > e)</TD ></TR ><TR ><TD CLASS="doc" >Associate each data element with its index </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" >jsTest</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:indexedUP" ><A NAME="v%3AindexedUP" ></A ></A ><B >indexedUP</B > :: (<A HREF="Data-Array-Parallel-Unlifted-Distributed.html#t%3ADT" >DT</A > e, <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e) => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > (<A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > <A HREF="../dph-base/Data-Array-Parallel-Base.html#t%3A%3A%2A%3A" >:*:</A > e)</TD ></TR ><TR ><TD CLASS="doc" >Associate each element of the array with its index </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:replicateUP" ><A NAME="v%3AreplicateUP" ></A ></A ><B >replicateUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="doc" >Yield an array where all elements contain the same value </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:replicateEachUnbalancedUP" ><A NAME="v%3AreplicateEachUnbalancedUP" ></A ></A ><B >replicateEachUnbalancedUP</B > :: <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUA" >UA</A > e => <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > e</TD ></TR ><TR ><TD CLASS="doc" >Expand every element in the argument array by the factor given in the corresponding array. The resulting array is unbalanced. TODO: do we need a balanced version? Will probably provide no performance benefit </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:dropUP" ><A NAME="v%3AdropUP" ></A ></A ><B >dropUP</B > :: <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A > -> <A HREF="../dph-prim-seq/Data-Array-Parallel-Unlifted-Sequential.html#t%3AUArr" >UArr</A > <A HREF="../ghc-prim/GHC-Types.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="botbar" >Produced by <A HREF="http://www.haskell.org/haddock/" >Haddock</A > version 2.4.2</TD ></TR ></TABLE ></BODY ></HTML >