comp.lang.ada
 help / color / mirror / Atom feed
From: Andrew Berg <andrewb@votehere.net>
Subject: State of memory management in GNAT?
Date: Tue, 13 Feb 2001 13:31:45 -0800
Date: 2001-02-13T13:31:45-08:00	[thread overview]
Message-ID: <3A89A7C1.8D3CFC4@votehere.net> (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



             reply	other threads:[~2001-02-13 21:31 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-02-13 21:31 Andrew Berg [this message]
2001-02-14 11:20 ` State of memory management in GNAT? Florian Weimer
replies disabled

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