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:a6b:6315:: with SMTP id p21-v6mr670883iog.43.1530024144111; Tue, 26 Jun 2018 07:42:24 -0700 (PDT) X-Received: by 2002:aca:5f05:: with SMTP id t5-v6mr213296oib.2.1530024143956; Tue, 26 Jun 2018 07:42:23 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!feeder4.usenet.farm!feed.usenet.farm!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!u78-v6no807030itb.0!news-out.google.com!p13-v6ni970itf.0!nntp.google.com!d7-v6no806211itj.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 26 Jun 2018 07:42:23 -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: <5e86db65-84b9-4b5b-9aea-427a658b5ae7@googlegroups.com> <878t7u1cfm.fsf@nightsong.com> <776f3645-ed0c-4118-9b4d-21660e3bba4b@googlegroups.com> <87602fbu2g.fsf@nightsong.com> <87po0mziqt.fsf@nightsong.com> <87fu1izfgs.fsf@nightsong.com> <878t75nwad.fsf@adaheads.home> <15b6f89f-997b-45ac-86b4-2e614bb624c2@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <1c1c1144-3727-4587-80bd-ef4af54f9e05@googlegroups.com> Subject: Re: Ada Successor Language From: "Dan'l Miller" Injection-Date: Tue, 26 Jun 2018 14:42:24 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Xref: reader02.eternal-september.org comp.lang.ada:53330 Date: 2018-06-26T07:42:23-07:00 List-Id: On Tuesday, June 26, 2018 at 9:17:02 AM UTC-5, Dmitry A. Kazakov wrote: > On 2018-06-26 15:59, Dan'l Miller wrote: > > On Tuesday, June 26, 2018 at 2:44:26 AM UTC-5, Dmitry A. Kazakov wrote: > >> On 2018-06-25 18:21, Dan'l Miller wrote: > >>> On Monday, June 25, 2018 at 10:19:15 AM UTC-5, Dmitry A. Kazakov wrot= e: > >>>> On 2018-06-25 16:44, J-P. Rosen wrote: > >>>>> Le 25/06/2018 =C3=A0 16:21, Dmitry A. Kazakov a =C3=A9crit=C2=A0: > >>>> > >>>>>> Ada could allow T'Class for untagged T. T'Class would be an indefi= nite > >>>>>> type with values consisting of the actual type's tag and its value= . When > >>>>>> T is by-value type, you pass T'Class to a subprogram as tag + valu= e. > >>>>>> When T is by-reference type, you pass tag + reference. > >>>>>> > >>>>>> Upon dispatch, you strip the tag from the value or reference befor= e > >>>>>> passing value/reference down. > >>>>> > >>>>> It was a requirement of Ada95 that OOP be strictly contained, and t= hat > >>>>> the same typing system as Ada83 be kept for those who don't want OO= P. > >>>> > >>>> Don't want OO, don't declare T'Class objects. Where is a problem? > >>> > >>> The problem is that you just proposed 'Class for non-OO semantics. Y= our proposal violates the Principal of Least Surprise. > >> > >> Remember, Ada is a strongly typed language, T'Class is not T, there is > >> no way it could break or change anything in T. > >=20 > > Quit putting non sequitur words in my mouth. I never said that it woul= d break anything in T. I said that it would break T'Class in =E2=80=A2some= =E2=80=A2 situations of the untagged extended records, >=20 > Such situations are strictly non-existent for neither T'Class nor record= =20 > extensions are presently allowed for non-tagged types. And yet, you propose them.