A difference List is a Function that, given a List, returns the original
contents of the difference List prepended to the given List.
This structure supports O(1)
append
and push
operations on lists, making it
useful for append-heavy uses such as logging and pretty printing.
"Run" a DList
by appending it on the right by a List α
to get another List α
.
The apply
function of a DList
is completely determined by the list apply []
.
Instances For