From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-0.5 required=3.0 tests=BAYES_05 autolearn=ham autolearn_force=no version=3.4.5-pre1 Date: 20 Oct 92 15:12:11 GMT From: noc.near.net!nic.umass.edu!hudson@uunet.uu.net (Rick Hudson) Subject: Re: User-defined assignment Message-ID: List-Id: >>>>> On Sat, 17 Oct 1992 23:32:09 GMT, stt@spock.camb.inmet.com (Tucker Taft) said: Tucker> Therefore, this sort of user-defined assignment is Tucker> supported, and Initialize and Finalize work correctly, Tucker> in the presence of exceptions and abort. (What this means Tucker> is that Finalize is performed on an object if and only if Initialize Tucker> is performed on the object, and both Initialize and Finalize defer abor t Tucker> until they complete, once they get started.) It is probable wrong to formally specify that Finalize will *defer* abort until it completes. Such a specification pretty much limits Ada to gc strategies that utilize reference counts which are not as efficient generational copying collectors. While such forms of memory management may be the only strategies that are currently envisioned for Ada, similar languages such as Modula-3 have shown that other solution are possible. If the Ada 9X folks simply say that Finalization will eventually happen (possible concurrently) then it doesn't cut off roads that might lead to interesting places. -- Richard L. Hudson - Hudson@cs.umass.edu; (413) 545-1220; Advanced Languages Project - University Computing Services Lederle Graduate Research Center University of Massachusetts Amherst, MA 01003