Wikipedia has a note on XOR linked lists.[1] That's a more general form of this concept.
This technique is decades older than the references there indicate.
I'm trying to find a reference to this in early garbage collection papers, and not, so far, succeeding.
It's the sort of thing that mattered around when LISP was being invented in the 1950s and 1960s, and memory cost millions of dollars per megabyte.
Animats|1 year ago
[1] https://en.wikipedia.org/wiki/XOR_linked_list
genewitch|1 year ago