dph-par-0.4.0: Data structures for Nested Data-Parallel Haskell.Source codeContentsIndex
Data.Array.Parallel.Lifted
Synopsis
data PArray a = PArray Int# (PData a)
data family PData a
data PA a = PA {
toPRepr :: a -> PRepr a
fromPRepr :: PRepr a -> a
toArrPRepr :: PData a -> PData (PRepr a)
fromArrPRepr :: PData (PRepr a) -> PData a
dictPRepr :: PR (PRepr a)
}
lengthPA# :: PArray a -> Int#
dataPA# :: PArray a -> PData a
replicatePA# :: PA a -> Int# -> a -> PArray a
replicatelPA# :: PA a -> Segd -> PArray a -> PArray a
repeatPA# :: PA a -> Int# -> PArray a -> PArray a
repeatcPA# :: PA a -> Array Int -> Segd -> PArray a -> PArray a
emptyPA :: PA a -> PArray a
indexPA# :: PA a -> PArray a -> Int# -> a
extractPA# :: PA a -> PArray a -> Int# -> Int# -> PArray a
bpermutePA# :: PA a -> PArray a -> Int# -> Array 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# -> Array Bool -> PArray a
combine2PA# :: PA a -> Int# -> Sel2 -> PArray a -> PArray a -> PArray a
fromListPA# :: PA a -> Int# -> [a] -> PArray a
fromListPA :: PA a -> [a] -> PArray a
nfPA :: PA a -> PArray a -> ()
replicatePD :: PA a -> T_replicatePR a
replicatelPD :: PA a -> T_replicatelPR a
repeatPD :: PA a -> T_repeatPR a
repeatcPD :: PA a -> T_repeatcPR a
emptyPD :: PA a -> T_emptyPR a
indexPD :: PA a -> T_indexPR a
extractPD :: PA a -> T_extractPR a
bpermutePD :: PA a -> T_bpermutePR a
appPD :: PA a -> T_appPR a
applPD :: PA a -> T_applPR a
packPD :: PA a -> T_packPR a
combine2PD :: PA a -> T_combine2PR a
fromListPD :: PA a -> T_fromListPR a
fromListPD :: PA a -> T_fromListPR a
nfPD :: PA a -> T_nfPR a
type family PRepr a
data PR a = PR {
emptyPR :: T_emptyPR a
replicatePR :: T_replicatePR a
replicatelPR :: T_replicatelPR a
repeatPR :: T_repeatPR a
repeatcPR :: T_repeatcPR a
indexPR :: T_indexPR a
extractPR :: T_extractPR a
bpermutePR :: T_bpermutePR a
appPR :: T_appPR a
applPR :: T_applPR a
packPR :: T_packPR a
combine2PR :: T_combine2PR a
fromListPR :: T_fromListPR a
nfPR :: T_nfPR a
}
mkPR :: PA a -> PR a
mkReprPA :: a ~ PRepr a => PR a -> PA a
type T_replicatePR a = Int# -> a -> PData a
type T_replicatelPR a = Segd -> PData a -> PData a
type T_repeatPR a = Int# -> Int# -> PData a -> PData a
type T_repeatcPR a = Int# -> Array Int -> Segd -> PData a -> PData a
type T_emptyPR a = PData a
type T_indexPR a = PData a -> Int# -> a
type T_extractPR a = PData a -> Int# -> Int# -> PData a
type T_bpermutePR a = PData a -> Int# -> Array Int -> PData a
type T_appPR a = PData a -> PData a -> PData a
type T_applPR a = Segd -> PData a -> Segd -> PData a -> PData a
type T_packPR a = PData a -> Int# -> Array Bool -> PData a
type T_combine2PR a = Int# -> Sel2 -> PData a -> PData a -> PData a
type T_fromListPR a = Int# -> [a] -> PData a
type T_fromListPR a = Int# -> [a] -> PData a
type T_nfPR a = PData a -> ()
data family PData a
dPA_Int :: PA Int
dPR_Int :: PR Int
dPA_Word8 :: PA Word8
dPR_Word8 :: PR Word8
dPA_Double :: PA Double
dPR_Double :: PR Double
dPA_Bool :: PA Bool
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 PArray a Source
Lifted parallel arrays
Constructors
PArray Int# (PData a)
show/hide Instances
(Elt a, Show a) => Show (PArray a)
data family PData a Source
data PA a Source
Dictionaries
Constructors
PA
toPRepr :: a -> PRepr a
fromPRepr :: PRepr a -> a
toArrPRepr :: PData a -> PData (PRepr a)
fromArrPRepr :: PData (PRepr a) -> PData a
dictPRepr :: PR (PRepr a)
lengthPA# :: PArray a -> Int#Source
dataPA# :: PArray a -> PData aSource
replicatePA# :: PA a -> Int# -> a -> PArray aSource
replicatelPA# :: PA a -> Segd -> PArray a -> PArray aSource
repeatPA# :: PA a -> Int# -> PArray a -> PArray aSource
repeatcPA# :: PA a -> Array Int -> Segd -> PArray a -> PArray aSource
emptyPA :: PA a -> PArray aSource
indexPA# :: PA a -> PArray a -> Int# -> aSource
extractPA# :: PA a -> PArray a -> Int# -> Int# -> PArray aSource
bpermutePA# :: PA a -> PArray a -> Int# -> Array 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# -> Array Bool -> PArray aSource
combine2PA# :: PA a -> Int# -> Sel2 -> 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
replicatePD :: PA a -> T_replicatePR aSource
replicatelPD :: PA a -> T_replicatelPR aSource
repeatPD :: PA a -> T_repeatPR aSource
repeatcPD :: PA a -> T_repeatcPR aSource
emptyPD :: PA a -> T_emptyPR aSource
indexPD :: PA a -> T_indexPR aSource
extractPD :: PA a -> T_extractPR aSource
bpermutePD :: PA a -> T_bpermutePR aSource
appPD :: PA a -> T_appPR aSource
applPD :: PA a -> T_applPR aSource
packPD :: PA a -> T_packPR aSource
combine2PD :: PA a -> T_combine2PR aSource
fromListPD :: PA a -> T_fromListPR aSource
fromListPD :: PA a -> T_fromListPR aSource
nfPD :: PA a -> T_nfPR aSource
type family PRepr a Source
Representation types
data PR a Source
Constructors
PR
emptyPR :: T_emptyPR a
replicatePR :: T_replicatePR a
replicatelPR :: T_replicatelPR a
repeatPR :: T_repeatPR a
repeatcPR :: T_repeatcPR a
indexPR :: T_indexPR a
extractPR :: T_extractPR a
bpermutePR :: T_bpermutePR a
appPR :: T_appPR a
applPR :: T_applPR a
packPR :: T_packPR a
combine2PR :: T_combine2PR a
fromListPR :: T_fromListPR a
nfPR :: T_nfPR a
mkPR :: PA a -> PR aSource
mkReprPA :: a ~ PRepr a => PR a -> PA aSource
type T_replicatePR a = Int# -> a -> PData aSource
type T_replicatelPR a = Segd -> PData a -> PData aSource
type T_repeatPR a = Int# -> Int# -> PData a -> PData aSource
type T_repeatcPR a = Int# -> Array Int -> Segd -> PData a -> PData aSource
type T_emptyPR a = PData aSource
type T_indexPR a = PData a -> Int# -> aSource
type T_extractPR a = PData a -> Int# -> Int# -> PData aSource
type T_bpermutePR a = PData a -> Int# -> Array Int -> PData aSource
type T_appPR a = PData a -> PData a -> PData aSource
type T_applPR a = Segd -> PData a -> Segd -> PData a -> PData aSource
type T_packPR a = PData a -> Int# -> Array Bool -> PData aSource
type T_combine2PR a = Int# -> Sel2 -> PData a -> PData a -> PData aSource
type T_fromListPR a = Int# -> [a] -> PData aSource
type T_fromListPR a = Int# -> [a] -> PData aSource
type T_nfPR a = PData a -> ()Source
data family PData a Source
dPA_Int :: PA IntSource
dPR_Int :: PR IntSource
dPA_Word8 :: PA Word8Source
dPR_Word8 :: PR Word8Source
dPA_Double :: PA DoubleSource
dPR_Double :: PR DoubleSource
dPA_Bool :: PA BoolSource
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.6.1