comfort-array: Arrays where the index type is a function of the shape type

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Arrays from the basic array package are already very powerful compared with arrays in other languages. They may have any number of dimensions, are type safe and defined in a uniform way using the Ix class 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:

With our Array type you can perform

See also comfort-graph for a Graph data structure, with non-Int node identifiers and flexible edge types.

Properties

Versions 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, 0.5.1.1, 0.5.2
Change log Changes.md
Dependencies base (>=4.5 && <5), containers (>=0.4 && <0.7), deepseq (>=1.3 && <1.5), guarded-allocation (>=0.0.1 && <0.1), non-empty (>=0.3.2 && <0.4), prelude-compat (>=0.0 && <0.1), primitive (>=0.6.4 && <0.8), QuickCheck (>=2 && <3), semigroups (>=0.18.3 && <1.0), storable-record (>=0.0.1 && <0.1), storablevector (>=0.2 && <0.3), tagged (>=0.7 && <0.9), transformers (>=0.3 && <0.7), utility-ht (>=0.0.10 && <0.1) [details]
License BSD-3-Clause
Author Henning Thielemann <haskell@henning-thielemann.de>
Maintainer Henning Thielemann <haskell@henning-thielemann.de>
Category Data Structures
Home page https://hub.darcs.net/thielema/comfort-array/
Source repo this: darcs get https://hub.darcs.net/thielema/comfort-array/ --tag 0.5.2
head: darcs get https://hub.darcs.net/thielema/comfort-array/
Uploaded by HenningThielemann at 2022-06-02T07:21:43Z

Modules

Flags

Automatic Flags
NameDescriptionDefault
setindex

Use efficient Set indexing from containers>=0.5.4

Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees