A nonrecursive list compacting algorithm | Synapse