Baker s recognised that the spaces of a scavenging collector are just manifestations of sets of cells. Any other implementation of sets would do just as well. It does not have to be copied if its allegiance can be transferred from one set to another. The reference fields link each cell into doubly linked lists that implement sets. The colour field indicates which set a cell belongs to.
All free store is initially in the from set.
If a non copying collector is used, then it does not matter if an area is exporting its references to a static or a dynamic language as long as the area protocol is satisfied. The consistency issues described in section 4.2.2 are closely related to concurrent garbage collection. Our pagewise read barrier is an variation of Appel, Ellis, and Li s incremental garbage collection algorithm, which uses a pagewise wavefront with objectwise relocation. As we will explain in Sect. Their insight is that in a copying collector, the spaces of the collector are really just a particular implementation of sets.