[gclist] What wrong with the GC in xemacs

boehm.PARC@xerox.com boehm.PARC@xerox.com
Tue, 2 Apr 1996 13:45:29 PST


Jim Blandy wrote:

"I think GNU Emacs would benefit greatly from the increased locality of
reference possible with generational copying GC's, but it seems to me
that copying GC's are incompatible with conservative collection
techniques; since you can't be sure you're looking at a pointer, you
can't change it to point to the object's new location, so you'd better
not move the object at all.  Is this correct?"

It's still possible to copy most objects if only a few of the pointers are
ambiguous, such as if you only treat the stack conservatively.  Joel Bartlett's
mostly copying collector does this.  I believe this is also the algorithm used
in the Modula 3 implementation.

This probably has advantages if you use it as part of a generational collector
to support very high allocation rates.  I think its locality advantages over a
generational nonmoving mark and sweep collector are often exaggerated.  It does
make it cheaper to allocate very short-lived objects.  But I think we've had
this discussion before.

Hans