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.4, ghc ==9.8.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-06-16T03:58:48Z
Distributions NixOS:0.1.1.0
Downloads 62 total (6 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-06-16 [all 1 reports]

Readme for seqn-0.1.0.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.