comfort-array: Arrays where the index type is a function of the shape type
Arrays from the basic
array package are already very powerful
compared with arrays in other languages.
It provides arrays of any dimension in a type safe and uniform way
with free choice of the lower bounds (0, 1, or whatever you like).
This package goes one step further: The shape and the index type are different, but the index type is a type function of the shape type. This offers much more flexibility and type safety.
Some examples are:
Range: Allow dynamic choice of lower and upper array bounds such as in the
Arrays from the
arraypackage. You can combine it with other shapes in other dimensions. It allows you to describe the bounds of each dimension individually.
Shifted: Describe array bounds by start index and length. It is sometimes more natural to use these parameters. E.g. a non-negative index type like
-1and thus cannot encode an empty range starting with index
Square: An 2D array where both dimensions always have equal size.
ZeroBased, OneBased: Arrays with fixed lower bound, either 0 or 1, respectively.
Arrays with indices like
GTand dummy shape.
|Versions [RSS] [faq]||0.0, 0.0.1, 0.0.1.1, 0.1, 0.1.1, 0.1.2, 0.2, 0.3, 0.3.1, 0.4, 0.4.1, 0.5, 0.5.1 (info)|
|Dependencies||base (>=4.5 && <5), utility-ht (>=0.0.10 && <0.1) [details]|
|Author||Henning Thielemann <email@example.com>|
|Maintainer||Henning Thielemann <firstname.lastname@example.org>|
|Source repo||this: darcs get http://hub.darcs.net/thielema/comfort-array/ --tag 0.0.1.1
head: darcs get http://hub.darcs.net/thielema/comfort-array/
|Uploaded||by HenningThielemann at 2018-07-25T16:40:13Z|
|Distributions||LTSHaskell:0.4.1, NixOS:0.4.1, Stackage:0.5.1|
|Downloads||5299 total (32 in the last 30 days)|
|Rating||2.0 (votes: 1) [estimated by Bayesian average]|
Docs available [build log]
Last success reported on 2018-07-25 [all 1 reports]