A garbage collector treats a heap as divided into regions. From a
candidate set of those regions, it selects the collection sets on which
it performs collection increments from among those regions in accordance
with a selection criterion separate from the ages of the objects that
those regions contain. It nonetheless segregates objects according to
age, placing objects in such a manner that no candidate-set region
containing an object whose age is less than some predetermined maximum
also contains an object of a different age.