 | dph-prim-seq-0.4.0: Sequential Primitives for Data-Parallel Haskell. | Contents | Index |
|
Data.Array.Parallel.Unlifted |
|
|
|
Synopsis |
|
data a :*: b = !a :*: !b | | class UA a => Elt a | | type Array = UArr | | type Segd = USegd | | length :: Elt a => Array a -> Int | | empty :: Elt a => Array a | | replicate :: Elt a => Int -> a -> Array a | | repeat :: Elt a => Int -> Int -> Array a -> Array a | | (+:+) :: Elt a => Array a -> Array a -> Array a | | (!:) :: Elt a => Array a -> Int -> a | | extract :: Elt a => Array a -> Int -> Int -> Array a | | drop :: Elt a => Int -> Array a -> Array a | | permute :: Elt a => Array a -> Array Int -> Array a | | mbpermute :: (Elt a, Elt b) => (a -> b) -> Array a -> Array Int -> Array b | | bpermute :: Elt a => Array a -> Array Int -> Array a | | bpermuteDft :: Elt e => Int -> (Int -> e) -> Array (Int :*: e) -> Array e | | update :: Elt a => Array a -> Array (Int :*: a) -> Array a | | pack :: Elt a => Array a -> Array Bool -> Array a | | combine :: Elt a => Array Bool -> Array a -> Array a -> Array a | | enumFromTo :: Int -> Int -> Array Int | | enumFromThenTo :: Int -> Int -> Int -> Array Int | | enumFromToEach :: Int -> Array (Int :*: Int) -> Array Int | | enumFromStepLen :: Int -> Int -> Int -> Array Int | | enumFromStepLenEach :: Int -> Array ((Int :*: Int) :*: Int) -> Array Int | | indexed :: Elt a => Array a -> Array (Int :*: a) | | zip :: (Elt a, Elt b) => Array a -> Array b -> Array (a :*: b) | | zip3 :: (Elt a, Elt b, Elt c) => Array a -> Array b -> Array c -> Array ((a :*: b) :*: c) | | unzip :: (Elt a, Elt b) => Array (a :*: b) -> Array a :*: Array b | | unzip3 :: (Elt a, Elt b, Elt c) => Array ((a :*: b) :*: c) -> (Array a :*: Array b) :*: Array c | | fsts :: (Elt a, Elt b) => Array (a :*: b) -> Array a | | snds :: (Elt a, Elt b) => Array (a :*: b) -> Array b | | map :: (Elt a, Elt b) => (a -> b) -> Array a -> Array b | | zipWith :: (Elt a, Elt b, Elt c) => (a -> b -> c) -> Array a -> Array b -> Array c | | zipWith3 :: (Elt a, Elt b, Elt c, Elt d) => (a -> b -> c -> d) -> Array a -> Array b -> Array c -> Array d | | filter :: Elt a => (a -> Bool) -> Array a -> Array a | | fold :: Elt a => (a -> a -> a) -> a -> Array a -> a | | fold1 :: Elt a => (a -> a -> a) -> Array a -> a | | and :: Array Bool -> Bool | | sum :: (Num a, Elt a) => Array a -> a | | scan :: Elt a => (a -> a -> a) -> a -> Array a -> Array a | | replicate_s :: Elt a => Segd -> Array a -> Array a | | replicate_rs :: Elt a => Int -> Array a -> Array a | | append_s :: Elt a => Segd -> Array a -> Segd -> Array a -> Array a | | repeat_c :: Elt a => Int -> Array Int -> Segd -> Array a -> Array a | | fold_s :: Elt a => (a -> a -> a) -> a -> Segd -> Array a -> Array a | | fold1_s :: Elt a => (a -> a -> a) -> Segd -> Array a -> Array a | | sum_s :: (Num a, Elt a) => Segd -> Array a -> Array a | | indices_s :: Int -> Segd -> Int -> Array Int | | sum_r :: (Num a, Elt a) => Int -> Int -> Array a -> Array a | | lengthSegd :: Segd -> Int | | lengthsSegd :: Segd -> Array Int | | indicesSegd :: Segd -> Array Int | | elementsSegd :: Segd -> Int | | lengthsToSegd :: Array Int -> Segd | | mkSegd :: Array Int -> Array Int -> Int -> Segd | | selectorToIndices2 :: Array Int -> Array Int | | pick :: (Elt a, Eq a) => Array a -> a -> Array Bool | | count :: (Elt a, Eq a) => Array a -> a -> Int | | randoms :: (Elt a, Random a, RandomGen g) => Int -> g -> Array a | | randomRs :: (Elt a, Random a, RandomGen g) => Int -> (a, a) -> g -> Array a | | class UIO a => IOElt a | | hGet :: IOElt a => Handle -> IO (Array a) | | hPut :: IOElt a => Handle -> Array a -> IO () | | toList :: Elt a => Array a -> [a] | | fromList :: Elt a => [a] -> Array a |
|
|
Documentation |
|
data a :*: b |
Strict pair
| Constructors | | Instances | (Eq a, Eq b) => Eq (:*: a b) | (Ord a, Ord b) => Ord (:*: a b) | (Read a, Read b) => Read (:*: a b) | (Show a, Show b) => Show (:*: a b) | (Rebox a, Rebox b) => Rebox (:*: a b) | (HS a, HS b) => HS (:*: a b) | (UIO a, UIO b) => UIO (:*: a b) | (UA a, UA b) => UA (:*: a b) | (IOElt a, IOElt b) => IOElt (:*: a b) | (Elt a, Elt b) => Elt (:*: a b) |
|
|
|
class UA a => Elt a |
| Instances | |
|
|
type Array = UArr |
|
type Segd = USegd |
|
length :: Elt a => Array a -> Int |
|
empty :: Elt a => Array a |
|
replicate :: Elt a => Int -> a -> Array a |
|
repeat :: Elt a => Int -> Int -> Array a -> Array a |
|
(+:+) :: Elt a => Array a -> Array a -> Array a |
|
(!:) :: Elt a => Array a -> Int -> a |
|
extract :: Elt a => Array a -> Int -> Int -> Array a |
|
drop :: Elt a => Int -> Array a -> Array a |
|
permute :: Elt a => Array a -> Array Int -> Array a |
|
mbpermute :: (Elt a, Elt b) => (a -> b) -> Array a -> Array Int -> Array b |
|
bpermute :: Elt a => Array a -> Array Int -> Array a |
|
bpermuteDft :: Elt e => Int -> (Int -> e) -> Array (Int :*: e) -> Array e |
|
update :: Elt a => Array a -> Array (Int :*: a) -> Array a |
|
pack :: Elt a => Array a -> Array Bool -> Array a |
|
combine :: Elt a => Array Bool -> Array a -> Array a -> Array a |
|
enumFromTo :: Int -> Int -> Array Int |
|
enumFromThenTo :: Int -> Int -> Int -> Array Int |
|
enumFromToEach :: Int -> Array (Int :*: Int) -> Array Int |
|
enumFromStepLen :: Int -> Int -> Int -> Array Int |
|
enumFromStepLenEach :: Int -> Array ((Int :*: Int) :*: Int) -> Array Int |
|
indexed :: Elt a => Array a -> Array (Int :*: a) |
|
zip :: (Elt a, Elt b) => Array a -> Array b -> Array (a :*: b) |
|
zip3 :: (Elt a, Elt b, Elt c) => Array a -> Array b -> Array c -> Array ((a :*: b) :*: c) |
|
unzip :: (Elt a, Elt b) => Array (a :*: b) -> Array a :*: Array b |
|
unzip3 :: (Elt a, Elt b, Elt c) => Array ((a :*: b) :*: c) -> (Array a :*: Array b) :*: Array c |
|
fsts :: (Elt a, Elt b) => Array (a :*: b) -> Array a |
|
snds :: (Elt a, Elt b) => Array (a :*: b) -> Array b |
|
map :: (Elt a, Elt b) => (a -> b) -> Array a -> Array b |
|
zipWith :: (Elt a, Elt b, Elt c) => (a -> b -> c) -> Array a -> Array b -> Array c |
|
zipWith3 :: (Elt a, Elt b, Elt c, Elt d) => (a -> b -> c -> d) -> Array a -> Array b -> Array c -> Array d |
|
filter :: Elt a => (a -> Bool) -> Array a -> Array a |
|
fold :: Elt a => (a -> a -> a) -> a -> Array a -> a |
|
fold1 :: Elt a => (a -> a -> a) -> Array a -> a |
|
and :: Array Bool -> Bool |
|
sum :: (Num a, Elt a) => Array a -> a |
|
scan :: Elt a => (a -> a -> a) -> a -> Array a -> Array a |
|
replicate_s :: Elt a => Segd -> Array a -> Array a |
|
replicate_rs :: Elt a => Int -> Array a -> Array a |
|
append_s |
:: Elt a | | => Segd | segment descriptor of first array
| -> Array a | data of first array
| -> Segd | segment descriptor of second array
| -> Array a | data of first array
| -> Array a | |
|
|
repeat_c |
:: Elt a | | => Int | length of the result array
| -> Array Int | number of time a segment is repeated
| -> Segd | segment descriptor
| -> Array a | data array
| -> Array a | |
|
|
fold_s :: Elt a => (a -> a -> a) -> a -> Segd -> Array a -> Array a |
|
fold1_s :: Elt a => (a -> a -> a) -> Segd -> Array a -> Array a |
|
sum_s :: (Num a, Elt a) => Segd -> Array a -> Array a |
|
indices_s |
:: Int | number of segments
| -> Segd | segment descriptor
| -> Int | overall number of indices
| -> Array Int | |
|
|
sum_r :: (Num a, Elt a) => Int -> Int -> Array a -> Array a |
|
lengthSegd :: Segd -> Int |
|
lengthsSegd :: Segd -> Array Int |
|
indicesSegd :: Segd -> Array Int |
|
elementsSegd :: Segd -> Int |
|
lengthsToSegd :: Array Int -> Segd |
|
mkSegd :: Array Int -> Array Int -> Int -> Segd |
|
selectorToIndices2 :: Array Int -> Array Int |
|
pick :: (Elt a, Eq a) => Array a -> a -> Array Bool |
|
count :: (Elt a, Eq a) => Array a -> a -> Int |
|
randoms :: (Elt a, Random a, RandomGen g) => Int -> g -> Array a |
|
randomRs :: (Elt a, Random a, RandomGen g) => Int -> (a, a) -> g -> Array a |
|
class UIO a => IOElt a |
| Instances | |
|
|
hGet :: IOElt a => Handle -> IO (Array a) |
|
hPut :: IOElt a => Handle -> Array a -> IO () |
|
toList :: Elt a => Array a -> [a] |
|
fromList :: Elt a => [a] -> Array a |
|
Produced by Haddock version 2.6.1 |