simple-enumeration: Finite or countably infinite sequences of values.

[ bsd3, data, library ] [ Propose Tags ]

Finite or countably infinite sequences of values, supporting efficient indexing and random sampling.

[Skip to Readme]
Versions [faq] 0.1, 0.2, 0.2.1
Change log
Dependencies base (>=4.7 && <5), integer-gmp [details]
License BSD-3-Clause
Copyright 2019 Brent Yorgey
Author Brent Yorgey
Category Data
Home page
Bug tracker
Source repo head: git clone
Uploaded by BrentYorgey at 2020-06-25T19:49:57Z
Distributions NixOS:0.2.1
Downloads 682 total (84 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-06-25 [all 1 reports]


[Index] [Quick Jump]


Maintainer's Corner

For package maintainers and hackage trustees

Readme for simple-enumeration-0.2.1

[back to package description]


Lightweight, efficiently indexable enumerations

This package defines a type of enumerations, along with combinators for building and manipulating them. An enumeration is a finite or countably infinite sequence of values, represented as a function from an index to a value. Hence it is possible to work with even very large finite sets. Enumerations also naturally support (uniform) random sampling.

Note the goal of this package is not to enumerate values of Haskell types; there already exist many other packages to do that. Rather, the goal is simply to provide an abstract framework for working with enumerations of any values at all.

See the documentation for examples; see the announcement blog post for additional examples and discussion.