Safe Haskell | None |
---|---|
Language | Haskell2010 |
Dense primitive arrays where the lower index is zero (or the equivalent of zero for newtypes and enumerations).
Actual write
s to data structures use a more safe write
instead of
the unsafe unsafeWrite
. Writes also tend to occur much less in DP
algorithms (say, N^2 writes for an N^3 time algorithm -- mostly reads
are being executed).
TODO consider if we want to force the lower index to be zero, or allow
non-zero lower indices. Will have to be considered together with the
Index.Class
module!
TODO while Unboxed
is, in princile, Hashable
, we'd need the
corresponding VU.Vector
instances ...
Unboxed, multidimensional arrays.
Boxed, multidimensional arrays.
Index sh => PrimArrayOps Boxed sh elm Source # | |
Index sh => MPrimArrayOps Boxed sh elm Source # | |
Index sh => PrimArrayMap Boxed sh e e' Source # | |
(Eq e, Eq sh) => Eq (Boxed sh e) Source # | |
(Read e, Read sh) => Read (Boxed sh e) Source # | |
(Show e, Show sh) => Show (Boxed sh e) Source # | |
Generic (MutArr m (Boxed sh e)) Source # | |
Generic (Boxed sh e) Source # | |
(Hashable sh, Hashable e, Hashable (Vector e)) => Hashable (Boxed sh e) Source # | |
(ToJSON sh, ToJSON e) => ToJSON (Boxed sh e) Source # | |
(FromJSON sh, FromJSON e) => FromJSON (Boxed sh e) Source # | |
(Binary sh, Binary e) => Binary (Boxed sh e) Source # | |
(Serialize sh, Serialize e) => Serialize (Boxed sh e) Source # | |
NFData sh => NFData (MutArr m (Boxed sh e)) Source # | |
(NFData sh, NFData e) => NFData (Boxed sh e) Source # | |
data MutArr m (Boxed sh e) Source # | |
type Rep (MutArr m (Boxed sh e)) Source # | |
type Rep (Boxed sh e) Source # | |