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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,80bc3e0698be468f X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!newsfeed.vmunix.org!peer-uk.news.demon.net!kibo.news.demon.net!mutlu.news.demon.net!news.demon.co.uk!demon!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Type safety on wikipedia Date: Fri, 27 Jan 2006 19:50:49 +0000 Organization: Pushface Message-ID: References: <1138260496.230283.147640@g43g2000cwa.googlegroups.com> <1138283608.433842.76060@z14g2000cwz.googlegroups.com> <43D8E85C.6020805@mailinator.com> <1535741.yb0A0MsH1D@linux1.krischik.com> <43D912A3.2030201@mailinator.com> <11271924.245PKaY7qe@linux1.krischik.com> NNTP-Posting-Host: pogner.demon.co.uk Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: news.demon.co.uk 1138391450 3117 62.49.19.209 (27 Jan 2006 19:50:50 GMT) X-Complaints-To: abuse@demon.net NNTP-Posting-Date: Fri, 27 Jan 2006 19:50:50 +0000 (UTC) Cancel-Lock: sha1:gQn8BxbHCqma9BR8hTIbno3zISo= User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (darwin) Xref: g2news1.google.com comp.lang.ada:2688 Date: 2006-01-27T19:50:49+00:00 List-Id: Martin Krischik writes: > Simon Wright wrote: > >> "Alex R. Mosteo" writes: >> >>> This is something I've mused about sometimes: Let's suppose some Ada >>> compiler goes ahead and provides a GC. What happens with programs >>> written without taking this into account? >> >> 13.11.2(17) only says that Free _should_ reclaim the storage. I >> suppose for a GC implementation there could be at least 2 >> implementation strategies: >> >> * don't actually reclaim, just remove local reference and deal with >> tasks if necessary >> >> * check that the reference count is in fact 1 and raise *_Error if >> not! That would be useful! > > That is indeed interesting. Up until now I have implemented the interface to > the bohem-weiser collector as such that memory is reclaimed. Being German I > did not spot the true meaning of should. I might reconsider the > implementation. I was imagining that GC and Free might be independent, so that (modulo tasks and finalization) Free would only have to null the pointer and GC would magically see later that the memory was no longer referenced. I think the collector you're working on s more cooperative? I think that a dangling pointer is only a _potential_ deathtrap, so my second suggestion is perhaps a bit over the top. On the other hand, in safety-related systems one would prefer to avoid even the possibility ...