splice n1 n2 Connects n1 and n2 so that next n1 == n2 && prev n2 == n1. This can be used to connect two discrete lists, or, if used on two nodes within the same list, it can be used to separate the nodes between n1 and n2 from the rest of the list. In this case, those nodes become a discrete list by themselves. This is an O(1) operation.

skip n i Return the node that is i nodes after node n in the list. If i is negative then return the node that is i nodes before node n in the list. This is an O(N) operation.

Accumulate a value over the entire list. This works like List.fold_right, but since the list is bidirectional, it doesn't suffer the performance problems of List.fold_right. This is an O(N) operation.

Allocate a new list, with entirely new nodes, whose values are the transforms of the values of the original list. Note that this does not modify the given list. This is an O(N) operation.

Create a dllist from an enum. This consumes the enum, and allocates a whole new dllist. Raises Empty if given enum is empty. This is an O(N) operation.