dph-lifted-copy-0.6.0.1: Data Parallel Haskell lifted array combinators. (deprecated version)

Safe HaskellSafe-Infered

Data.Array.Parallel

Contents

Description

User level interface of parallel arrays.

This library is deprecated. Using it can result in the vectorised program having asymptotically worse complexity than the original. Your program could be 10000x slower than it should be with this library.

Use the dph-lifted-vseg package instead.

Synopsis

Documentation

Operations on parallel arrays '[::]'

emptyP :: [:a:]Source

singletonP :: a -> [:a:]Source

replicateP :: Int -> a -> [:a:]Source

lengthP :: [:a:] -> IntSource

(!:) :: [:a:] -> Int -> aSource

(+:+) :: [:a:] -> [:a:] -> [:a:]Source

concatP :: [:[:a:]:] -> [:a:]Source

mapP :: (a -> b) -> [:a:] -> [:b:]Source

filterP :: (a -> Bool) -> [:a:] -> [:a:]Source

combineP :: [:a:] -> [:a:] -> [:Int:] -> [:a:]Source

zipP :: [:a:] -> [:b:] -> [:(a, b):]Source

zip3P :: [:a:] -> [:b:] -> [:c:] -> [:(a, b, c):]Source

unzipP :: [:(a, b):] -> ([:a:], [:b:])Source

unzip3P :: [:(a, b, c):] -> ([:a:], [:b:], [:c:])Source

zipWithP :: (a -> b -> c) -> [:a:] -> [:b:] -> [:c:]Source

zipWith3P :: (a -> b -> c -> d) -> [:a:] -> [:b:] -> [:c:] -> [:d:]Source

bpermuteP :: [:a:] -> [:Int:] -> [:a:]Source

updateP :: [:a:] -> [:(Int, a):] -> [:a:]Source

indexedP :: [:a:] -> [:(Int, a):]Source

sliceP :: Int -> Int -> [:e:] -> [:e:]Source

crossMapP :: [:a:] -> (a -> [:b:]) -> [:(a, b):]Source

Conversions

data PArray a Source

Lifted/bulk parallel arrays This contains the array length, along with the element data.

Instances

(PA a, Show a) => Show (PArray a) 
PR a => PR (PArray a) 
PA a => PA (PArray a) 

toPArrayP :: [:a:] -> PArray aSource