[gclist] Fast-allocating non-copying GC's

Paul R. Wilson wilson@cs.utexas.edu
Thu, 14 Mar 1996 21:58:30 -0600


>From majordom@iecc.com Thu Mar 14 19:03:56 1996
>From: David.Ungar@Eng.Sun.COM (David Ungar)
>Subject: Re: [gclist] Fast-allocating non-copying GC's
>Cc: gclist@iecc.com
>
>Hey, Paul--are you upset? Have I pushed too hard?

Nope.  I was just in a hurry, and not being careful about how things
sound---sorry.   I have a pretty tough hide about such things, anyhow,
and this wasn't close to my threshold.  (Thanks for asking, though!)

>At 8:57 AM 3/14/96, Paul R. Wilson wrote:
>
>>These are different goals than
>>your goals for Self.   (Or at least, the goals are prioritized differently.)
>>(Maybe this is the real issue---we should just argue about whether everyone
>>should use Self for everything, starting now.)
>>
>
>I'm not sure why you put in the parenthetical comment--

I think it may actually be a relevant point.  There are different kinds
of systems and goals, and I think we all tend to see things a little
differently.  Your point about a 10% extra header overhead is an excellent
one, and I deserved to be called on it.  But I also thought that my
points about various other advantages were good (in an "it depends" way).

Put less ambiguously:

 "I think it's worth deciding whether we're talking about languages like
 C++ and Modula-3 or languages like Smalltalk, etc., and making that explicit.
 Otherwise hidden assumptions will tend to creep in."  Actually it's
 tougher than than---it depends on environments (standalone or program
 development?  File-based or persistent?).  And I find that the assumptions
 creep around in my own mind while I'm not looking.

(BTW, you probably know by now I'm a huge fan of your work.  The course
packet for my programming languages class usually has 3 papers on Self and the
Self compiler(s)... you're tied for first place with me, and it's *my*
course. :-)  So don't think I was slamming you or Self.)

>I've been trying to express opinions about GC schemes and allocators
>and to make clear that this stuff all depends on context.
>What works best for C-land is not best for ST-land.

Yes.  I was just pushing back with the converse point, and insisting on it.
(And maybe weighting it a little more heavily, heavy-handedly.)  I may also
have mis-estimated the degree to which you intended to push the point.
(I got some sense that you were using Self partly as an example of a
"real system with real users who care if it's really good", rather than
just a "real Smalltalk-ish system with real users who care if it's really
good".  And in fact, it's some of both---the header overhead point does
apply, to varying degrees, to lots of real systems.  (Nobody wants to waste
RAM, even if they're not using a big development environment that's on the
verge of thrashing.)

>That's all.

Cool.  Let the games resume...

WRT the FAQ, this is tricky stuff.  I find it frustrating how hard it
is to express the subtleties of "picking a winner" in the GC sweepstakes
without overstressing some point or other.  Bleah.  On the other hand,
the FAQ can only do good, given the current popular understanding.
(Maybe we can get some people to replace their reference counters with
*something* better.)

>-- Dave

  Paul.