From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,3498dd887729ed19 X-Google-Attributes: gid103376,public From: dewar@merv.cs.nyu.edu (Robert Dewar) Subject: Re: Garbage Collection in Ada Date: 1996/10/16 Message-ID: #1/1 X-Deja-AN: 189966346 references: <01bbb910$f1e73f60$829d6482@joy.ericsson.se> <199610132138291604607@dialup101-6-14.swipnet.se> <19961014115513529729@dialup105-2-16.swipnet.se> <199610162305033003135@dialup100-4-3.swipnet.se> organization: New York University newsgroups: comp.lang.ada Date: 1996-10-16T00:00:00+00:00 List-Id: Lars says " With standard sanction the potential problems you and others (optimizer tricks that might trip off the collector) would also be under control. If there is GC it is controlled by the same people that control the optimizer. With sanctioned GC there would be restrictions on what optimizer tricks would be allowed. " No, you are confused, if a language expects GC, and if a proper GC is incorporated, there is no respect in which the presence of GC inhibits optimizations. Where did you get this idea? It is true that a conservative collector depends on assuming the absence of no optimization, but there is no way that a language definition could somehow "sanction" a conservative collector. At best it could say something like "An implementation is free to remove blocks from memory that cannot be further referenced", but that does not say no use of virtual origins. You can't have something in a language standard that says "the implementation must work correctly with a conservative collector that works as follows" ! At least I *trust* that no one would suggest such a statement in a language standard, but really I know better, people suggest all sorts of incredible things.