q4c12-twofinger: Efficient alternating finger trees
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.
This package provides efficient alternating sequences based on finger trees. These can represent sequences made up of two types of element, e
and a
where two of the same type of element cannot follow each other directly.
Four different flavours are provided, isomorphic to ([(a, e)], a)
, ([(e, a)], e)
, [(a, e)]
, and [(e, a)]
.
Cons-like operations are O(1) amortised, and append operations are O(log(min(n, m))) amortised.
For more details, please see the Haddock documentation of Q4C12.TwoFinger.
[Skip to Readme]
Properties
Versions | 0, 0.0.0.1, 0.0.0.2, 0.0.0.2, 0.1, 0.2 |
---|---|
Change log | CHANGELOG.markdown |
Dependencies | base (>=4.9.1.0 && <4.11), bifunctors (>=5.4.2 && <5.6), deepseq (>=1.4.3.0 && <1.5), QuickCheck (>=2.10.1 && <2.11), semigroupoids (>=5.2.1 && <5.3), streams (>=3.3 && <3.4) [details] |
License | BSD-2-Clause |
Author | quasicomputational <quasicomputational@gmail.com> |
Maintainer | quasicomputational <quasicomputational@gmail.com> |
Category | Data Structures |
Home page | https://github.com/quasicomputational/mega/tree/master/packages/twofinger |
Bug tracker | https://github.com/quasicomputational/mega/issues |
Source repo | head: git clone https://github.com/quasicomputational/mega |
Uploaded | by quasicomputational at 2017-12-08T22:17:01Z |
Modules
[Index]
Downloads
- q4c12-twofinger-0.0.0.2.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees