knead-1.0.1.1: Repa-like array processing using LLVM JIT
Safe HaskellSafe-Inferred
LanguageHaskell98

Data.Array.Knead.Symbolic.Physical

Synopsis

Documentation

data Array sh a #

Instances

Instances details
(AppendMonoid sh, Storable a) => Monoid (Array sh a) 
Instance details

Defined in Data.Array.Comfort.Storable.Private

Methods

mempty :: Array sh a #

mappend :: Array sh a -> Array sh a -> Array sh a #

mconcat :: [Array sh a] -> Array sh a #

(AppendSemigroup sh, Storable a) => Semigroup (Array sh a) 
Instance details

Defined in Data.Array.Comfort.Storable.Private

Methods

(<>) :: Array sh a -> Array sh a -> Array sh a #

sconcat :: NonEmpty (Array sh a) -> Array sh a #

stimes :: Integral b => b -> Array sh a -> Array sh a #

(C sh, Show sh, Storable a, Show a) => Show (Array sh a) 
Instance details

Defined in Data.Array.Comfort.Storable.Private

Methods

showsPrec :: Int -> Array sh a -> ShowS #

show :: Array sh a -> String #

showList :: [Array sh a] -> ShowS #

NFData sh => NFData (Array sh a) 
Instance details

Defined in Data.Array.Comfort.Storable.Private

Methods

rnf :: Array sh a -> () #

(C sh, Eq sh, Storable a, Eq a) => Eq (Array sh a) 
Instance details

Defined in Data.Array.Comfort.Storable.Private

Methods

(==) :: Array sh a -> Array sh a -> Bool #

(/=) :: Array sh a -> Array sh a -> Bool #

shape :: Array sh a -> sh Source #

toList :: (C sh, Storable a) => Array sh a -> IO [a] Source #

fromList :: (C sh, Storable a) => sh -> [a] -> IO (Array sh a) Source #

vectorFromList :: (Num n, Storable a) => [a] -> IO (Array (ZeroBased n) a) Source #

with :: (C sh, C a) => (Array sh a -> IO b) -> Array sh a -> IO b Source #

The symbolic array is only valid inside the enclosed action.

render :: (C sh, C sh, C a) => Array sh a -> IO (Array sh a) Source #

scanl1 :: (C sh, C sh, C n, C n, C a, C a) => (Exp a -> Exp a -> Exp a) -> Array (sh, n) a -> IO (Array (sh, n) a) Source #

mapAccumLSimple :: (C sh, C sh, C n, C n, C acc, C x, C y) => (Exp acc -> Exp x -> Exp (acc, y)) -> Array sh acc -> Array (sh, n) x -> IO (Array (sh, n) y) Source #

scatter :: (C sh0, Index sh0 ~ ix0, C sh1, Index sh1 ~ ix1, C sh1, C a) => (Exp a -> Exp a -> Exp a) -> Array sh1 a -> Array sh0 (ix1, a) -> IO (Array sh1 a) Source #

scatterMaybe :: (C sh0, Index sh0 ~ ix0, C sh1, Index sh1 ~ ix1, C sh1, C a) => (Exp a -> Exp a -> Exp a) -> Array sh1 a -> Array sh0 (Maybe (ix1, a)) -> IO (Array sh1 a) Source #

permute :: (C sh0, Index sh0 ~ ix0, C sh1, Index sh1 ~ ix1, C sh1, C a) => (Exp a -> Exp a -> Exp a) -> Array sh1 a -> (Exp ix0 -> Exp ix1) -> Array sh0 a -> IO (Array sh1 a) Source #