[gclist] Language assistance to generational model

Charles Fiterman cef@geode.geodesic.com
Fri, 06 Dec 1996 09:03:15 +0000


We are noting that objects are born in clusters
and die in clusters. For example a program may
build a table and in doing so create a lot of
objects which will live until the whole table
dies.

It seems that the programmer must know about this
and could say.
   gcBuildingSomething("FooBarTable");
   // build the table
   gcDoneBuildingSomething("FooBarTable");

And the collector could form very good generational
ideas instead of simply guessing.

Another way would be to annotate how long lived
something is.

aFun()
{
        foo *f = newLifeInfo aFun foo;
        ...
        ...
}

The newLifeInfo aFun foo is like new foo but says
this object's usefull life will be about as long
as aFun lives. Oh ... something like that.

Charles Fiterman	Geodesic Systems
Phone 312-728-7196	4745 N. Ravenswood Suite 111
Fax   312-728-6096	Chicago Il 60015
cef@geodesic.com

A computer language without garbage collection
  is like a city without garbage collection.