The dual-tree package

[Tags: bsd3, library]

Rose (n-ary) trees with both upwards- (i.e. cached) and downwards-traveling (i.e. accumulating) monoidal annotations. This is used as the core data structure underlying the diagrams framework (, but potentially has other applications as well.

Abstractly, a DUALTree is a rose (n-ary) tree with data (of type l) at leaves, data (of type a) at internal nodes, and two types of monoidal annotations, one (of type u) travelling "up" the tree and one (of type d) traveling "down".

See Data.Tree.DUAL for full documentation. Data.Tree.DUAL provides a public API which should suffice for most purposes. Data.Tree.DUAL.Internal exports more of the internal implementation---use it at your own risk.


Versions0.1.0.0,,,,,, 0.2,,,,,,,,
Change logCHANGES
Dependenciesbase (>=4.3 && <4.9), monoid-extras (>=0.2 && <0.5), newtype (==0.2.*), semigroups (>=0.8 && <0.19) [details]
AuthorBrent Yorgey
Bug tracker
Source repositoryhead: git clone
UploadedWed Nov 11 00:56:55 UTC 2015 by bergey
DistributionsDebian:, LTSHaskell:, NixOS:, Stackage:
Downloads22096 total (99 in last 30 days)
0 []
StatusDocs not available [build log]
All reported builds failed as of 2015-11-12 [all 1 reports]



Maintainers' corner

For package maintainers and hackage trustees