RE: Release schedule for GHC 5.02

I can use a term sharing garbage collector, but is that what you mean with compacting ? For example, given the datatype:
data T = N T T | L
And the following graph before collection:
N / \ N N / \ / \ L L L L
Will this result in the graph below after compacting garbage collection ?
N / \ \ / N / \ \ / L
No, it simply means that the heap is compacted in-place rather than the live data copied into new memory and the old memory discarded. The former is normally called "in-place compaction", "mark-compact", or just "compaction", the latter is normally called "two-space" or "copying" collection. In-place compaction is somewhat slower than copying, but doesn't require any extra memory at garbage collection time, apart from some extra space to store a bitmap - ie. 1/32 of the heap size on a 32-bit machine. Cheers, Simon
participants (1)
-
Simon Marlow