Proposal: improve the Data.Tree API

Ivan Lazar Miljenovic ivan.miljenovic at
Mon Feb 24 11:38:24 UTC 2014

On 24 February 2014 22:17, Tobias Florek <haskell at> wrote:
> hi,
>> But to be honest, I don't have strong feelings about this, I'm willing
>> to drop this particular function (length) from the proposal, if there is
>> no consensus.
> then what about the arguably better name `size`?

Huh, I thought we already had that.

Some things I missed when I last used Data.Tree:

* An Ord instance (achievable via standalone deriving, though this isn't ideal)

* A function to take the mirror-image of a tree (name not that important):

mirror :: Tree a -> Tree a
mirror (Node a ts) = Node a . reverse $ map mirror ts

* Functions to take/drop so many levels of the tree (take is
relatively easy; drop would result in a Forest).

> cheers,
>  tobias florek
> _______________________________________________
> Libraries mailing list
> Libraries at

Ivan Lazar Miljenovic
Ivan.Miljenovic at

More information about the Libraries mailing list