Safe Haskell | None |
---|---|
Language | Haskell98 |
Documentation
Delayed arrays wrap functions from an index to element value.
The index space is specified by an inner layout, l
.
Every time you index into a delayed array the element at that position is recomputed.
Delayed | |
|
Eq (Name l) => Eq (Name (D l)) Source # | |
Eq l => Eq (D l) Source # | |
Show (Name l) => Show (Name (D l)) Source # | |
Show l => Show (D l) Source # | |
Layout l => Layout (D l) Source # | Delayed arrays. |
Layout l => Bulk (D l) a Source # | Delayed arrays. |
(Layout l1, Target l2 a) => Load (D l1) l2 a Source # | |
data Name (D l) Source # | |
type Index (D l) Source # | |
data Array (D l) Source # | |
fromFunction :: l -> (Index l -> a) -> Array (D l) a Source #
Wrap a function as a delayed array.
> toList $ fromFunction (Linear 10) (* 2) = [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
toFunction :: Array (D l) a -> (l, Index l -> a) Source #
Produce the extent of an array, and a function to retrieve an arbitrary element.