From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.6 X-Received: by 2002:a05:6214:1d23:: with SMTP id f3mr2021498qvd.67.1643997120361; Fri, 04 Feb 2022 09:52:00 -0800 (PST) X-Received: by 2002:a25:ac49:: with SMTP id r9mr233446ybd.323.1643997120086; Fri, 04 Feb 2022 09:52:00 -0800 (PST) Path: eternal-september.org!reader02.eternal-september.org!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 4 Feb 2022 09:51:59 -0800 (PST) In-Reply-To: Injection-Info: google-groups.googlegroups.com; posting-host=47.185.200.73; posting-account=zwxLlwoAAAChLBU7oraRzNDnqQYkYbpo NNTP-Posting-Host: 47.185.200.73 References: <87o83pzlvm.fsf@nightsong.com> <87bkzpyqx3.fsf@nightsong.com> <8735l0zo6j.fsf@nightsong.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <656e414f-cc19-412b-aa7e-23c56675a024n@googlegroups.com> Subject: Re: Adacore joins with Ferrous Systems to support Rust From: Andreas ZEURCHER Injection-Date: Fri, 04 Feb 2022 17:52:00 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Xref: reader02.eternal-september.org comp.lang.ada:63474 List-Id: On Friday, February 4, 2022 at 4:28:26 AM UTC-6, Luke A. Guest wrote: > On 04/02/2022 03:20, Randy Brukardt wrote:=20 >=20 > >> Just like we didn't touch generic packages until much later in the yea= r,=20 > >> generic subprograms, yeah, because u_d was required early on.=20 > >>=20 > >>> objecting to this, I think he was right (philosophically; I've no ide= a=20 > >>> about the practicality of alternate approaches).=20 > >>=20 > >> How else would you do controlled types?=20 > >=20 > > Ada 9x originally had a bunch of magic attributes (similar to streaming= ). It > Now I want to know what these magic attributes were! Were they specific= =20 > to a version of OO? Or were they to enable finalization? Randy, I agree with Luke: were these intermediate design proposals lost en= tirely or have they (as still extant) have simply not been released publicl= y? I suspect that at least some of these attributes have nowadays analogue= s in C++ smart pointer's & Objective-C/Swift's ARC {strong, weak, plain old= data not needing finalization, pointed-to-object ownership, presence of fi= nalization subroutine/function/procedure a.k.a. finalizer/destructor, wheth= er this finalizer in a subtype displaces its parent's finalizer versus this= finalizer in a subtype chains its finalizer to all of its ancestors' final= izers unwound from most-derived to underived-root, =E2=80=A6 and so forth}.= Or was Tucker's set of magic attributes going an entirely different direc= tion? That intermediate proposal under consideration back in the 1st half = of the 1990s might be a quite interesting read (especially by a reader with= an interest in envisioning an Ada-esque analogue of Rust's borrow-checker = algorithm).