A general sequence representation with arbitrary annotations, for use as a base
for implementations of various collection types, with examples, as described in
section 4 of
- Ralf Hinze and Ross Paterson, "Finger trees: a simple general-purpose data
structure", /Journal of Functional Programming/ 16:2 (2006) pp 197-217.
For a tuned sequence type, see 'Data.Sequence' in the 'containers' package,
which is a specialization of this structure.