comp.lang.ada
 help / color / mirror / Atom feed
* State of memory management in GNAT?
@ 2001-02-13 21:31 Andrew Berg
  2001-02-14 11:20 ` Florian Weimer
  0 siblings, 1 reply; 2+ messages in thread
From: Andrew Berg @ 2001-02-13 21:31 UTC (permalink / raw)



I have not used ADA for anything substantial since I was an
undergraduate CS student, back in the '91-93 timeframe.  (When it was
still in vogue at the University of Washington.)  

At that time, I was somewhat unimpressed with the "state of the art" in
ADA memory management, which as I recall was at such a state that noone
that I talked to had any idea what it was.

According to my memory, the design of the language was such that it was
not impossible to implement a garbage collector, but for a particular
implementation of the compiler+libraries it was not required.  As a
result we ended up using something like "unchecked deallocation" to
release heap memory.

In the last few years, I have been (sadly) doing mostly C++ and PERL
programming, and have gotten used to the STL's automatic-but-inefficient
memory management, and PERL's
automatic-but-interpreted-so-it's-not-a-fair-comparison memory
management.

The essence of my question:

For C++ there is the Bohem-mumble-dash-somebody garbage collector, which
basically implements a conservative mark-sweep (I think, please don't
flame me if it's something else, because in this context it just doesn't
matter) garbage collector for C++'s heap.  I've used this in a couple of
little projects, and rather like the results. 

Has anyone implemented such a thing for GNAT?  Would it be possible? 
Would it be hard to adapt the Bohem one?  Is there any interest in such
a thing?  

-andrew



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: State of memory management in GNAT?
  2001-02-13 21:31 State of memory management in GNAT? Andrew Berg
@ 2001-02-14 11:20 ` Florian Weimer
  0 siblings, 0 replies; 2+ messages in thread
From: Florian Weimer @ 2001-02-14 11:20 UTC (permalink / raw)


Andrew Berg <andrewb@votehere.net> writes:

> Has anyone implemented such a thing for GNAT?  Would it be possible? 

I think you can use the Boehm collector together with GNAT.  There
might be some issues with tasking, but it should work pretty well,
especially if you do not replace the standard C malloc() and use the
collector malloc() only for your own objects (using a suitable storage
pool).

> Is there any interest in such a thing?

The interest in garbage collection among the Ada users seems to be
pretty low in general because otherwise, some of the Ada compiler
vendors would have implemented it. ;-)



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-02-14 11:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-02-13 21:31 State of memory management in GNAT? Andrew Berg
2001-02-14 11:20 ` Florian Weimer

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