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 X-Received: by 2002:a37:7cc1:: with SMTP id x184-v6mr5427317qkc.33.1530189672818; Thu, 28 Jun 2018 05:41:12 -0700 (PDT) X-Received: by 2002:a0c:f712:: with SMTP id w18-v6mr588804qvn.1.1530189672630; Thu, 28 Jun 2018 05:41:12 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!news.uzoreto.com!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!h2-v6no1337021qtp.0!news-out.google.com!a20-v6ni475qtj.1!nntp.google.com!h2-v6no1337010qtp.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Thu, 28 Jun 2018 05:41:12 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=47.185.195.62; posting-account=zwxLlwoAAAChLBU7oraRzNDnqQYkYbpo NNTP-Posting-Host: 47.185.195.62 References: <584564c2-9f64-4965-b045-535cdaf899c0@googlegroups.com> <2d617160-ac33-40e6-a06a-97cc0b53062d@googlegroups.com> <874lhsnvye.fsf@adaheads.home> <0a01e940-ec24-40b2-83f0-93157e379dc5@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: Why are Ada compilers difficult to write ? From: "Dan'l Miller" Injection-Date: Thu, 28 Jun 2018 12:41:12 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Xref: reader02.eternal-september.org comp.lang.ada:53407 Date: 2018-06-28T05:41:12-07:00 List-Id: On Thursday, June 28, 2018 at 6:54:29 AM UTC-5, Mehdi Saada wrote: > Could all of you STOP talking about other language, please ? Or at least = not in a way that require > ACTUAL knowledge of these ? > State your points in Ada terms at least, or neutral computer science term= s. So that maybe, outsiders > could understand with more ease, what the heck you're talking about, espe= cially when I have the > intuition that what you're saying isn't so complicated in fact. The OP of the =E2=80=9CWhy are Ada compilers difficult to write?=E2=80=9D t= hread explicitly requests comparing Ada compilers to other languages' compi= lers at a reason-by-reason level. Perhaps this whole thread is not for you= . The OP of the =E2=80=9CAda successor language=E2=80=9D thread explicitly re= quests considering what a next-generation Ada would look like. Part of thi= s ngAda is insularly inward looking: what Ada-esque features have been req= uested in AIs but blocked for various reasons. But the bigger part of this= ngAda is to outward looking: what nonAda features (from =E2=80=A2other= =E2=80=A2 languages; from theoretical work; from =E2=80=A2nonAda=E2=80=A2 l= uminaries) might be good for ngAda to have. Since ngAda is not strictly Ad= a, perhaps that whole thread is not for you either. And perhaps most importantly for Ada's continued existence: attempting to = suppress all speech about how to import currently-nonAda concepts into Ada = to improve Ada to survive through this period of serious competition and en= croachment from other languages catching up or surpassing Ada (at least in = those other languages' propaganda) is a direct threat to Ada's future exist= ence, or at least its future relevance. In general in the world, there are 2 systems regarding speech: 1) totalitarian suppression of certain categories of speech (e.g., speak on= ly in historically Ada{83,95,2005,2012} terms), so that only the =E2=80=98a= pproved=E2=80=99 speech remains versus 2) the USA's first amendment's fostering of multiple voices speaking a dive= rsity of thoughts so that at least some subset of the speech starts saying = what needs to be heard, contemplated, and acted upon, so in turn that speec= h rises as the cream to the top, leaving bad speech as a precipitate that s= inks to the bottom. Nations that follow scheme #1 usually die out. Nations that follow scheme = #2 tend to flourish. The same with communities regarding programming langu= ages. On Thursday, June 28, 2018 at 7:08:39 AM UTC-5, Vincent wrote: > Le lundi 25 juin 2018 22:07:16 UTC+2, Dirk Craeynest a =C3=A9crit=C2=A0: > > > > >> At Ada-Europe 2018, Maroua Maalej presented a paper with the title "= Safe > > >> Dynamic Memory Management in Ada and SPARK". It explains how you ca= n > > > >=20 > > Paper: > > https://link.springer.com/content/pdf/10.1007%2F978-3-319-92432-8_3.pdf >=20 > I am a little bit shocked by this proposal : >=20 > 1. The "Owning Object Aspect" changes the semantics of Access types in Ad= a.=20 > X :=3D Y; would now mean that=20 > - X'New =3D Y'Old > - Y'New =3D null=20 That would be a linear type system: https://en.wikipedia.org/wiki/Substructural_type_system There are some concerns that to accomplish its safety-critical goals, a few= portions of Ada are set on the wrong foundations. (AJPO, HOLWG, and Ada9X= were decades ago; their overseeing wisdom might be showing its staleness b= y now.) The competition from Rust's affine type system (including Rust's b= orrow checker) might be motivating the Ada community to consider more-forma= l embracing of the categories of type systems that arose since HOLWG and Je= an Ichbiah's era of work during the 1970s. That Wikipedia article and its = hyperlinks therein introduces 4: {linear, affine, relevant, ordered}. > 2. Shouldn't we create a new category of Owning Types instead of a new sp= ecial case of access values ? And add a new operator like : > X <- Y; >=20 > 3. In fact shouldn't this idea of owning object be instatiated in Ada as = limited types ? Wasn't the purpose of limited types to precisely forbid ass= ignement so as to avoid aliasing of dynamically allocated objects ? Like ta= sks types for instance, or protected types... I agree that there should be some overt syntax for placing Ada in the linea= r-typing mode instead of its access's historical mode.