Come to think of it, Deutsch, Schorr and Waite’s algorithm for traversing a data structure by reversing pointers within it can also be viewed as a form of a zipper. Except that DSW’s algorithm predates the zipper.
DSW’s algorithm is used in the mark phase of garbage collection. It traverses and marks all reachable data in constant space.
DSW’s algorithm is used in the mark phase of garbage collection. It traverses and marks all reachable data in constant space.
https://inst.eecs.berkeley.edu/~cs61bl/r//cur/graphs/garbage...