Finger_Tree
container.Finger_Tree
T
type
Type Parameters
Functions
env_vars option (container.Map String String),feed_stdin option io.path,timeout option time.duration
env_vars option (container.Map String String),
feed_stdin option io.path,
timeout option time.duration
execute this Sequence of process+args
0.099dev (GIT hash a35e75388cc5c7a861f5c2a3f42d121e3aab582a)
to efficiently represent persistent sequences.
It allows amortized constant time access to its elements.
Furthermore concatting (append/prepend) as well as splitting in logarithmic time.
In Fuzion finger trees are used for concatenation of strings and finite Sequences.
The paper introducing the datastructure:
https://www.cs.ox.ac.uk/ralf.hinze/publications/FingerTrees.pdf
The implementation that was used as an inspiration for this port:
https://github.com/ledbutter/CSharpFingerTree
NYI: UNDER DEVELOPMENT: split0, slice, reverse