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!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Ada Successor Language Date: Wed, 27 Jun 2018 21:11:25 +0200 Organization: Aioe.org NNTP Server Message-ID: References: <5e86db65-84b9-4b5b-9aea-427a658b5ae7@googlegroups.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> <396e6cfe-8f97-4aa7-9034-67fa089d8609@googlegroups.com> NNTP-Posting-Host: 3CrKQyqWAJZHy6zYVP/kUg.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 Content-Language: en-US X-Notice: Filtered by postfilter v. 0.8.3 Xref: reader02.eternal-september.org comp.lang.ada:53390 Date: 2018-06-27T21:11:25+02:00 List-Id: On 2018-06-27 18:33, Dan'l Miller wrote: > On Wednesday, June 27, 2018 at 2:15:23 AM UTC-5, Dmitry A. Kazakov wrote: >> On 2018-06-27 00:03, Dan'l Miller wrote: >>> On Tuesday, June 26, 2018 at 4:01:22 PM UTC-5, Niklas Holsti wrote: >> >>>> … I don't >>>> think Dmitry's suggestion for class-wide types rooted in untagged types >>>> would lead to the same problems as slicing in C++. >>> >>> Then you are an unable to foresee slicing situations as Bjarne Stroustrup was. Bjarne should not be one's role model as a language designer. >> >> But you are able to foresee that, right? Then maybe you put up an >> example of what the problem is? > > Rather than talk in C++-speak about importation of one of C++'s notorious flaws, let us instead talk in Ada-speak about an analogous proposed Ada feature. The Steelman requirement 3-3F strongly resembles portions of your tag-external-to-type idea on which your 'Class for untagged types depends. Both 3-3F and your tag-external-to-type require the compiler to know precisely which strong type is being utilized in ••every language construct everywhere under all circumstances••. Yep, that is strong typing property. Ada has it. What's wrong with that? > If the compiler at any time obfuscates that single strong type among a set of multiple related types, then the compiler runs the risk of > 1) losing track of precisely which strong type this versus that 3-3F no-storage-allocated-within-record extra fields among various 3-3F-utilizing record-types. > or > 2) losing track of precisely which strong type had this versus that tag-external-to-type regarding your various untagged types. There is nothing to lose. All types are statically known, thus all tags are known too. > Several language features come to mind immediately that could potentially be such obfuscations of strong typing into a set of 2 or more related types existing concurrently or progressively/incrementally over time: Show an example of such an obfuscation. >> P.S. The major failure of OO design in C++ is conflating specific and >> class-wide types, which makes C++ OO weakly-typed, whereas in Ada OO is >> strongly typed all the way. > > Oh how quickly you change your tune. Just 8 or 7 days ago you claimed the opposite regarding Ada's generics being a “weakly-typed” “50 shades of mess”. Now Ada generics are the paragon of strong typing able to nobly withstand any interaction with bad-idea other language features. Ada OO /= Ada generics. The whole point is that the knowledge of type systems accumulated since 80's allows us now to get rid of generics and have a much more simpler, regular, smaller and safer language. >> So any comparison to C++ without concrete examples is useless. > > No, any critique of an Ada proposal that has not been written up as an official AI or tantamount (same format & content) to an AI is what is truly useless. Why bother with AI which will never be considered? To push such changes trough the ARG one needs somebody like Tucker Taft. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de