ghc-dual-tree 0.2.2.1 Rose trees with cached and accumulating monoidal annotations

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.