dph-seq-0.3: Data structures for Nested Data-Parallel Haskell.Source codeContentsIndex
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 aSource
replicatelPA# :: PA a -> Int# -> PArray_Int# -> PArray a -> PArray aSource
repeatPA# :: PA a -> Int# -> PArray a -> PArray aSource
emptyPA :: PA a -> PArray aSource
indexPA# :: PA a -> PArray a -> Int# -> aSource
bpermutePA# :: PA a -> PArray a -> PArray_Int# -> PArray aSource
appPA# :: PA a -> PArray a -> PArray a -> PArray aSource
applPA# :: PA a -> Segd -> PArray a -> Segd -> PArray a -> PArray aSource
packPA# :: PA a -> PArray a -> Int# -> PArray_Bool# -> PArray aSource
combine2PA# :: PA a -> Int# -> PArray_Int# -> PArray_Int# -> PArray a -> PArray a -> PArray aSource
fromListPA# :: PA a -> Int# -> [a] -> PArray aSource
fromListPA :: PA a -> [a] -> PArray aSource
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 aSource
mkReprPA :: a ~ PRepr a => PR a -> PA aSource
class Elt a => PrimPA a whereSource
Methods
fromUArrPA :: Int -> Array a -> PArray aSource
toUArrPA :: PArray a -> Array aSource
primPA :: PA aSource
show/hide Instances
prim_lengthPA :: PrimPA a => PArray a -> IntSource
fromUArrPA' :: PrimPA a => Array a -> PArray aSource
data family PArray a Source
Lifted parallel arrays
dPA_Int :: PA IntSource
dPR_Int :: PR IntSource
upToPA_Int :: Int -> PArray IntSource
dPA_Word8 :: PA Word8Source
dPR_Word8 :: PR Word8Source
dPA_Double :: PA DoubleSource
dPR_Double :: PR DoubleSource
dPA_Bool :: PA BoolSource
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 -> bSource
Closure application
($:^) :: forall a b. PArray (a :-> b) -> PArray a -> PArray bSource
Lifted closure application
dPA_Clo :: PA a -> PA b -> PA (a :-> b)Source
Produced by Haddock version 2.4.2