knead-0.2: Repa array processing using LLVM JIT

Safe HaskellNone

Data.Array.Knead.Parameterized.Symbolic

Documentation

data Array p sh a Source

Instances

C (Array p) 

data Exp a Source

Instances

extendParameter :: (q -> p) -> Array p sh a -> Array q sh aSource

(!) :: (C sh, Index sh ~ ix, C ix, Storable ix, C ix, Scalar z) => Array p sh a -> T p ix -> Array p z aSource

fill :: (C sh, Storable sh, C sh, C a, Storable a, C a) => T p sh -> T p a -> Array p sh aSource

gather :: (C sh0, Index sh0 ~ ix0, C sh1, C a) => Array p sh1 ix0 -> Array p sh0 a -> Array p sh1 aSource

backpermute :: (C sh0, Index sh0 ~ ix0, C sh1, Index sh1 ~ ix1, Storable sh1, C sh1, C a) => T p sh1 -> (Exp ix1 -> Exp ix0) -> Array p sh0 a -> Array p sh1 aSource

id :: (C sh, Storable sh, C sh, Index sh ~ ix) => T p sh -> Array p sh ixSource

map :: (C sh, C c, Storable c) => (Exp c -> Exp a -> Exp b) -> T p c -> Array p sh a -> Array p sh bSource

zipWith :: (C sh, C d, Storable d) => (Exp d -> Exp a -> Exp b -> Exp c) -> T p d -> Array p sh a -> Array p sh b -> Array p sh cSource

fold1 :: (C sh0, C sh1, C c, Storable c, C a) => (Exp c -> Exp a -> Exp a -> Exp a) -> T p c -> Array p (sh0, sh1) a -> Array p sh0 aSource

fold1All :: (C sh, Scalar z, C c, Storable c, C a) => (Exp c -> Exp a -> Exp a -> Exp a) -> T p c -> Array p sh a -> Array p z aSource