seqn: Sequences and measured sequences

[ bsd3, data-structures, library ] [ Propose Tags ] [ Report a vulnerability ]

Sequences and measured sequences with logarithmic time index, split, append.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.1.0
Change log CHANGELOG.md
Dependencies base (>=4.13.0.0 && <5), deepseq (>=1.4.4.0 && <1.7), indexed-traversable (>=0.1 && <0.2), primitive (>=0.7.3.0 && <0.10), samsort (>=0.1.0.0 && <0.2), transformers (>=0.5.6.2 && <0.7) [details]
Tested with ghc ==8.8.4, ghc ==8.10.7, ghc ==9.0.2, ghc ==9.2.8, ghc ==9.4.8, ghc ==9.6.5, ghc ==9.8.2, ghc ==9.10.1
License BSD-3-Clause
Copyright (c) 2024 Soumik Sarkar
Author Soumik Sarkar
Maintainer soumiksarkar.3120@gmail.com
Category Data Structures
Home page https://github.com/meooow25/seqn
Bug tracker https://github.com/meooow25/seqn/issues
Source repo head: git clone https://github.com/meooow25/seqn.git
Uploaded by meooow at 2024-07-12T16:47:48Z
Distributions NixOS:0.1.1.0
Downloads 62 total (7 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2024-07-12 [all 1 reports]

Readme for seqn-0.1.1.0

[back to package description]

seqn

Hackage Haskell-CI

seqn offers two sequence types:

  • Seq, an immutable sequence supporting operations such as index, insert, delete, split, append, in logarithmic time. Seq is well-suited to use cases where there are frequent changes to the structure of the sequence.

  • MSeq, a sequence like Seq, which additionally supports constant time access to the accumulated "measure" of all its elements. See the documentation for MSeq for more about measures.

seqn also offers a priority-queue structure, PQueue, with logarithmic time queue operations.

Documentation

Please find the documentation on Hackage: seqn

Alternatives

The following structures are similar to Seq and MSeq, but may be better suited to some use cases.

For a detailed comparison, see here.

Acknowledgements

The interface and implementation of seqn is largely influenced by the libraries containers and fingertree.

Contributing

Questions, bug reports, documentation improvements, code contributions welcome! Please open an issue as the first step.