Re: my garbage collector sucks

"Roger Binns" <[email protected]>
Newsgroups gmane.comp.lang.prothon.user
Message-ID <[email protected]>
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

> I have also found out that reference counting has problems with
> multi-processor systems and distributed systems.

>From that second post, this observation may be useful:

  The two basic forms of automatic storage reclamation, tracing and
  reference counting, were invented at the dawn of the high-level
  language era over 40 years ago. Since then there have been many
  improvements and optimizations, but all systems are based on one or
  the other of these methods, which are uniformly viewed as being
  fundamentally different and possessing very distinct performance
  properties. We have implemented high-performance collectors of both
  types, and in the process observed that the more we optimized them,
  the more similarly they behaved -- that - they seem to share some
  deep structure.

  We present a formulation of the two algorithms that shows that they
  are in fact duals of each other. Intuitively, the difference is that
  tracing operates on live objects, or "matter", while reference counting
  operates on dead objects, or "anti-matter". For every operation by the
  tracing collector, there is a precisely corresponding anti-operation by
  the reference counting collector.

Roger
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.