| dph-seq-0.3: Data structures for Nested Data-Parallel Haskell. | Source code | Contents | Index
Data.Array.Parallel.Lifted
Synopsis
data family PArray a
data PA a = PA {
toPRepr :: a -> PRepr a
fromPRepr :: PRepr a -> a
toArrPRepr :: PArray a -> PArray (PRepr a)
fromArrPRepr :: PArray (PRepr a) -> PArray a
dictPRepr :: PR (PRepr a)
}
lengthPA# :: PA a -> PArray a -> Int#
replicatePA# :: PA a -> Int# -> a -> PArray a
replicatelPA# :: PA a -> Int# -> PArray_Int# -> PArray a -> PArray a
repeatPA# :: PA a -> Int# -> PArray a -> PArray a
emptyPA :: PA a -> PArray a
indexPA# :: PA a -> PArray a -> Int# -> a
bpermutePA# :: PA a -> PArray a -> PArray_Int# -> PArray a
appPA# :: PA a -> PArray a -> PArray a -> PArray a
applPA# :: PA a -> Segd -> PArray a -> Segd -> PArray a -> PArray a
packPA# :: PA a -> PArray a -> Int# -> PArray_Bool# -> PArray a
combine2PA# :: PA a -> Int# -> PArray_Int# -> PArray_Int# -> PArray a -> PArray a -> PArray a
fromListPA# :: PA a -> Int# -> [a] -> PArray a
fromListPA :: PA a -> [a] -> PArray a
nfPA :: PA a -> PArray a -> ()
type family PRepr a
data PR a = PR {
lengthPR :: PArray a -> Int#
emptyPR :: PArray a
replicatePR :: Int# -> a -> PArray a
replicatelPR :: Int# -> PArray_Int# -> PArray a -> PArray a
repeatPR :: Int# -> PArray a -> PArray a
indexPR :: PArray a -> Int# -> a
bpermutePR :: PArray a -> PArray_Int# -> PArray a
appPR :: PArray a -> PArray a -> PArray a
applPR :: Segd -> PArray a -> Segd -> PArray a -> PArray a
packPR :: PArray a -> Int# -> PArray_Bool# -> PArray a
combine2PR :: Int# -> PArray_Int# -> PArray_Int# -> PArray a -> PArray a -> PArray a
fromListPR :: Int# -> [a] -> PArray a
nfPR :: PArray a -> ()
}
mkPR :: PA a -> PR a
mkReprPA :: a ~ PRepr a => PR a -> PA a
class Elt a => PrimPA a where
fromUArrPA :: Int -> Array a -> PArray a
toUArrPA :: PArray a -> Array a
primPA :: PA a
prim_lengthPA :: PrimPA a => PArray a -> Int
fromUArrPA' :: PrimPA a => Array a -> PArray a
data family PArray a
dPA_Int :: PA Int
dPR_Int :: PR Int
upToPA_Int :: Int -> PArray Int
dPA_Word8 :: PA Word8
dPR_Word8 :: PR Word8
dPA_Double :: PA Double
dPR_Double :: PR Double
dPA_Bool :: PA Bool
toPrimArrPA_Bool :: PArray Bool -> PArray_Bool#
truesPA# :: PArray Bool -> Int#
dPA_Unit :: PA ()
dPA_2 :: PA a -> PA b -> PA (a, b)
dPA_3 :: PA a -> PA b -> PA c -> PA (a, b, c)
dPA_4 :: PA a -> PA b -> PA c -> PA d -> PA (a, b, c, d)
dPA_5 :: PA a -> PA b -> PA c -> PA d -> PA e -> PA (a, b, c, d, e)
dPA_PArray :: PA a -> PA (PArray a)
data a :-> b
($:) :: forall a b. (a :-> b) -> a -> b
($:^) :: forall a b. PArray (a :-> b) -> PArray a -> PArray b
dPA_Clo :: PA a -> PA b -> PA (a :-> b)
Documentation
data family PArray a | Source
Lifted parallel arrays
data PA a | Source
Dictionaries
Constructors
PA |
toPRepr :: a -> PRepr a |
fromPRepr :: PRepr a -> a |
toArrPRepr :: PArray a -> PArray (PRepr a) |
fromArrPRepr :: PArray (PRepr a) -> PArray a |
dictPRepr :: PR (PRepr a) |
lengthPA# :: PA a -> PArray a -> Int# | Source
replicatePA# :: PA a -> Int# -> a -> PArray a | Source
replicatelPA# :: PA a -> Int# -> PArray_Int# -> PArray a -> PArray a | Source
repeatPA# :: PA a -> Int# -> PArray a -> PArray a | Source
emptyPA :: PA a -> PArray a | Source
indexPA# :: PA a -> PArray a -> Int# -> a | Source
bpermutePA# :: PA a -> PArray a -> PArray_Int# -> PArray a | Source
appPA# :: PA a -> PArray a -> PArray a -> PArray a | Source
applPA# :: PA a -> Segd -> PArray a -> Segd -> PArray a -> PArray a | Source
packPA# :: PA a -> PArray a -> Int# -> PArray_Bool# -> PArray a | Source
combine2PA# :: PA a -> Int# -> PArray_Int# -> PArray_Int# -> PArray a -> PArray a -> PArray a | Source
fromListPA# :: PA a -> Int# -> [a] -> PArray a | Source
fromListPA :: PA a -> [a] -> PArray a | Source
nfPA :: PA a -> PArray a -> () | Source
type family PRepr a | Source
Representation types
data PR a | Source
Constructors
PR |
lengthPR :: PArray a -> Int# |
emptyPR :: PArray a |
replicatePR :: Int# -> a -> PArray a |
replicatelPR :: Int# -> PArray_Int# -> PArray a -> PArray a |
repeatPR :: Int# -> PArray a -> PArray a |
indexPR :: PArray a -> Int# -> a |
bpermutePR :: PArray a -> PArray_Int# -> PArray a |
appPR :: PArray a -> PArray a -> PArray a |
applPR :: Segd -> PArray a -> Segd -> PArray a -> PArray a |
packPR :: PArray a -> Int# -> PArray_Bool# -> PArray a |
combine2PR :: Int# -> PArray_Int# -> PArray_Int# -> PArray a -> PArray a -> PArray a |
fromListPR :: Int# -> [a] -> PArray a |
nfPR :: PArray a -> () |
mkPR :: PA a -> PR a | Source
mkReprPA :: a ~ PRepr a => PR a -> PA a | Source
class Elt a => PrimPA a where | Source
Methods
fromUArrPA :: Int -> Array a -> PArray a | Source
toUArrPA :: PArray a -> Array a | Source
primPA :: PA a | Source
Instances
PrimPA Bool
PrimPA Double
PrimPA Int
PrimPA Word8
prim_lengthPA :: PrimPA a => PArray a -> Int | Source
fromUArrPA' :: PrimPA a => Array a -> PArray a | Source
data family PArray a | Source
Lifted parallel arrays
dPA_Int :: PA Int | Source
dPR_Int :: PR Int | Source
upToPA_Int :: Int -> PArray Int | Source
dPA_Word8 :: PA Word8 | Source
dPR_Word8 :: PR Word8 | Source
dPA_Double :: PA Double | Source
dPR_Double :: PR Double | Source
dPA_Bool :: PA Bool | Source
toPrimArrPA_Bool :: PArray Bool -> PArray_Bool# | Source
truesPA# :: PArray Bool -> Int# | Source
dPA_Unit :: PA () | Source
dPA_2 :: PA a -> PA b -> PA (a, b) | Source
dPA_3 :: PA a -> PA b -> PA c -> PA (a, b, c) | Source
dPA_4 :: PA a -> PA b -> PA c -> PA d -> PA (a, b, c, d) | Source
dPA_5 :: PA a -> PA b -> PA c -> PA d -> PA e -> PA (a, b, c, d, e) | Source
dPA_PArray :: PA a -> PA (PArray a) | Source
data a :-> b | Source
The type of closures
($:) :: forall a b. (a :-> b) -> a -> b | Source
Closure application
($:^) :: forall a b. PArray (a :-> b) -> PArray a -> PArray b | Source
Lifted closure application
dPA_Clo :: PA a -> PA b -> PA (a :-> b) | Source
Produced by Haddock version 2.4.2