wtwolfe@hubcap.UUCP (Bill Wolfe) (01/15/89)
While reading my trusty ANSI/MIL-STD-1815A, I belatedly discovered
section 4.8 (10), which states:
The pragma CONTROLLED informs the implementation that automatic
storage reclamation must not be performed for objects designated
by values of the access type, except upon leaving the innermost
block statement, subprogram body, or task body that encloses the
access type declaration, or after leaving the main program.
pragma CONTROLLED (access_type_simple_name);
My apologies to anyone who might have concluded from my articles
that such a capability did not currently exist.
In the interests of standardization, and in light of Barry's statements
regarding the advanced nature of recent GC algorithms (which I shall
accept at face value despite his failure to send me a description of
these algorithms, or at least references to the literature), I do
support the idea that GC should be mandatory in Ada, in conjunction
with the continued presence of the pragma CONTROLLED. There remains
a need to completely define the storage consumption associated with
parameter passing, and to provide integration of ADT deallocation
procedures into the block exit mechanism.
Bill Wolfe
wtwolfe@hubcap.clemson.educarol@hpclove.HP.COM (Carol Thompson) (01/16/89)
Barry Margolin writes: >I don't know what the references for generational GC's are; recent >Lisp and Functional Programming Conference proceedings are probably a >good place to look. David Ungar did a great deal of work on Generation GC (I think he may have originated the idea). The paper "Generation Scavenging: A Non-disruptive High Performance Storage Reclamation Algorithm" is in the Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, April 23-25, 1984, which was published as the May 1984 issue of both Software Engineering Notes and SIGPLAN Notices. I hope that helps. Carol Thompson