Resets any delays in a list-of
tiers. Conceptually this
function makes a constructor "weightless", assuring the first tier is
non-empty.
reset [[], [], ..., xs, ys, zs, ...] = [xs, ys, zs, ...]
reset [[], xs, ys, zs, ...] = [xs, ys, zs, ...]
reset [[], [], ..., [x], [y], [z], ...] = [[x], [y], [z], ...]
Typically used when defining
Listable instances:
instance Listable <Type> where
tiers = ...
\/ reset (cons<N> <Constructor>)
\/ ...
Be careful: do not apply
reset to recursive data structure
constructors. In general this will make the list of size 0 infinite,
breaking the
tiers invariant (each tier must be finite).