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,aa2e415128e40fff X-Google-Attributes: gid103376,public From: dewar@merv.cs.nyu.edu (Robert Dewar) Subject: Re: Question about garbage collection Date: 1998/04/21 Message-ID: #1/1 X-Deja-AN: 346293832 References: <6h851g$sq$1@news.tm.net.my> <6hf8jj$p9a$1@mulga.cs.mu.OZ.AU> X-Complaints-To: usenet@news.nyu.edu X-Trace: news.nyu.edu 893163812 14263 (None) 128.122.140.58 Organization: New York University Newsgroups: comp.lang.ada Date: 1998-04-21T00:00:00+00:00 List-Id: <> I never said that! In fact I find the conservative GC approach a clever one, but it is important not to confuse it with real GC, such as is found in a typical Modula-3, Algol-68, SNOBOL4, LISP or Java system. With true GC, you have an invariant that after a collection, an object is not present if it is not referenced, and you can analyze worst case storage requirements on this basis. Obviously no such analysis is possible with conservative GC. But as I said before, if the primary reason for GC is to improve performance by reducing memory requirements, then conservative GC is a cheap way to achieve this goal. Whether it is a hack is a point of view. THe point is that the constraints on the use of malloc and free are pretty simple to state, and the collector itself is fairly simple, so this approach has the advantage of avoiding a lot of the implementaiton complexity that is common in trying to provide true GC for high level languages.