comp.lang.ada
 help / color / mirror / Atom feed
From: Brian Rogoff <bpr@best.com>
Subject: Re: GC - again, :-)
Date: 1997/04/30
Date: 1997-04-30T00:00:00+00:00	[thread overview]
Message-ID: <Pine.SGI.3.95.970430110433.18224A-100000@shellx.best.com> (raw)
In-Reply-To: JSA.97Apr29155844@alexandria


On 29 Apr 1997, Jon S Anthony wrote:
> Robert Eachus sez:
> >    Robert Dewar said:
> > 
> >    > What I think would be a nice compromise is to have a storage pool
> >    > specially for unbounded strings (or similar gizmos) where you got
> >    > GC in that storage pool -- something to keep looking at ...
> 
> This is definitely something to pursue.  What is more, I think you can
> generalize this notion.  I'm working on this sort of thing right now.

I've been looking at something similar, since I've been writing an
interpreter for a Lisp-like language in Ada. Obviously I can write a 
GC for a set of objects as part of the interpreter proper, since I 
know the lifetimes of many objects, and all of the roots, but I'd
prefer to be able to say something like 

	type SExpr_ID is access all SExpr_Type'Class;
	for SExpr_ID'Storage_Pool use Garbage_Collected_Pool;
	...
	-- These are ugly, but might be useful
	Register_Root ( Garbage_Collected_Pool, Root_1 );
	...
        Register_Root ( Garbage_Collected_Pool, Root_n );

and thus be able to reuse the collector easily in other contexts. 
	
> >    This is definitely an area where the language can and should
> > evolve.  Ada.Strings.Unbounded is a nice package to have, but a
> > generic which exported a Garbage_Collected type would be even more
> > useful in places:
> 
> Absolutely.  I am working on a whole set of these (related in
> subsystem hierarchies) which will offer wide ranges of GC options.
> While you can't do this completely transparently *within* the language
> (i.e., without compiler support), it is surprising how close you can
> in fact get.  What is more, it is very efficient and very flexible.

Well, now I'm curious! Do you have working source code? 

-- Brian






  reply	other threads:[~1997-04-30  0:00 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-04-29  0:00 GC - again, :-) Jon S Anthony
1997-04-30  0:00 ` Brian Rogoff [this message]
1997-05-01  0:00   ` Jon S Anthony
1997-05-02  0:00   ` Nick Roberts
1997-05-03  0:00     ` Jon S Anthony
1997-05-04  0:00     ` Robert Dewar
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox