Re: my garbage collector sucks

"Mark Hahn" <[email protected]>
Newsgroups gmane.comp.lang.prothon.user
Message-ID <[email protected]>
Roger Binns wrote:
> You may want to read some of Dan's stuff (he is implementing Parrot)
> at
>
> http://www.sidhe.org/~dan/blog/archives/000324.html
>
> http://www.sidhe.org/~dan/blog/archives/000323.html
>

That is some really good stuff.  I've selected points that grabbed my
attention.

1) I want tracing without stop the world, dammit. Pity I can't have it. :(

This was his first point.  I have continuous tracing (mark and sweep) due to
my locking objects.  He must have to stop the interpreter when he garbage
collects because Parrot doesn't have locking objects.

2) refcount is good for low mutation rates, tracing for high mutation rates

This is interesting.  It leads to the combined scheme mentioned next:

3) Ulterior ref counting; Trace the nursery, refcount the mature space

I myself think this would be an argument for just tracing, since when using
generation-based tracing you are effectively running only on the nursery.

4) All realistic collectors are a trace/refcount hybrid

I find this hard to believe.  Other things I read earlier today didn't even
mention hybrids.

The more I study up on this the more I'm convinced that for Prothon, a
generational mark-and-sweep (tracing) garbage collector is the way to go.  I
need to make it generational and add other cache-enhancement features when I
get to the optimizing phase of development.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.