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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!gandalf.srv.welterde.de!news.jacob-sparre.dk!franka.jacob-sparre.dk!pnx.dk!.POSTED.rrsoftware.com!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: How to get Ada to ?cross the chasm?? Date: Wed, 9 May 2018 17:05:21 -0500 Organization: JSA Research & Innovation Message-ID: References: <1c73f159-eae4-4ae7-a348-03964b007197@googlegroups.com> <87k1su7nag.fsf@nightsong.com> <87po2la2qt.fsf@nightsong.com> <87in8buttb.fsf@jacob-sparre.dk> <87wowqpowu.fsf@nightsong.com> <16406268-83df-4564-8855-9bd0fe9caac0@googlegroups.com> <87o9i2pkcr.fsf@nightsong.com> <87in88m43h.fsf@nightsong.com> <87efiuope8.fsf@nightsong.com> <322f9b26-01de-4753-bb50-6ef2f3d993d8@googlegroups.com> <87a7th9pd1.fsf@nightsong.com> <87h8no1nli.fsf@nightsong.com> Injection-Date: Wed, 9 May 2018 22:05:23 -0000 (UTC) Injection-Info: franka.jacob-sparre.dk; posting-host="rrsoftware.com:24.196.82.226"; logging-data="5873"; mail-complaints-to="news@jacob-sparre.dk" X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Response X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 Xref: reader02.eternal-september.org comp.lang.ada:52177 Date: 2018-05-09T17:05:21-05:00 List-Id: "Niklas Holsti" wrote in message news:flegbrFj0qjU1@mid.individual.net... > On 18-05-04 01:27 , Randy Brukardt wrote: > > [snip] > >> There is no realistic chance that Ada will >> ever be changed enough to make it amenable to GC. > > Ouch and wow, when did that direction change? > > As I remember it, for a long time the mantra was that Ada (83, 95, ...) > was compatible with GC, but vendors did not implement GC because there was > no immediate demand from the current users (chicken and egg situation). That was the same mantra used to justify not loosening the finalization rules to allow early finalization. However, such a loosening had to be fairly restricted (one can't allow it to happen anywhere, or every Finalize routine would have to be protected against tasking issues -- even if no tasking is used for the objects in question). I believe I suggested allowing it anywhere that a master is finalized, assuming the object in question is inaccessible. Probably the complication is why there was no appetite; the argument was that we needed someone implementing GC before we bother to fix the rules for GC. But since the rules essential prohibit useful GC, no one is going to implement it until they know those are going to be fixed. Ergo, no progress. >The Ada implementations targeting the JVM or .NET were/are claimed to use >the GC provided by the target. Were/are these somehow "non-Ada" >implementations? I'm sure they were fine. If one uses the canonical linked-list implementation of finalization, objects with controlled parts remain reachable until the appropriate master goes away -- so nothing gets collected. (And a similar effect is necessary regardless of how finalization is implemented.) There still can be an underlying GC and it can be used just fine -- no one said anything about it actually be able to collect much. Randy.