{-# LANGUAGE MagicHash #-} #include "fusion-phases.h" module Data.Array.Parallel.Unlifted ( -- * Basics Elt, Array, length, -- * Constructors empty, (+:+), generate, replicate, repeat, indexed, enumFromTo, enumFromThenTo, enumFromStepLen, enumFromStepLenEach, -- * Projections (!:), extract, drop, filter, -- * Permutation permute, bpermute, mbpermute, bpermuteDft, -- * Update update, -- * Packing and Combining pack, combine, combine2, interleave, -- * Map and ZipWith map, zipWith, zipWith3, zipWith4, -- * Zipping and Unzipping zip, unzip, fsts, snds, -- * Folds fold, fold1, and, sum, scan, -- * Segmented Constructors append_s, replicate_s, replicate_rs, -- * Segmented Folds fold_s, fold1_s, fold_r, sum_s, sum_r, -- * Segment Descriptors Segd, indices_s, lengthSegd, lengthsSegd, indicesSegd, elementsSegd, lengthsToSegd, mkSegd, plusSegd, -- * Selectors Sel2, mkSel2, tagsSel2, indicesSel2, elementsSel2_0, elementsSel2_1, repSel2, tagsToSel2, mkSelRep2, indicesSelRep2, elementsSelRep2_0, elementsSelRep2_1, -- * Packing and picking packByTag, pick, -- * Counting count, count_s, -- * Random arrays randoms, randomRs, -- * Array IO IOElt, hGet, hPut, toList, fromList, ) where import Prelude (Num, Int, Bool, Float, Double) import System.IO (IO, Handle) import Data.Word (Word8) import qualified System.Random import qualified Prelude