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-65-14.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00,T_SCC_BODY_TEXT_LINE, XPRIO autolearn=ham autolearn_force=no version=3.4.6 Path: eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: New aggregates with Ada 2022. Date: Thu, 30 Jun 2022 00:14:28 -0500 Organization: A noiseless patient Spider Message-ID: References: Injection-Date: Thu, 30 Jun 2022 05:14:30 -0000 (UTC) Injection-Info: reader01.eternal-september.org; posting-host="8f16bde40f2e228477f06b32f394b010"; logging-data="1809209"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+WwOdrV3UA8jZkKdWDh/Silpkhro9ppqY=" Cancel-Lock: sha1:ZB0nPeCCzB98QO05qC5SigzRD80= X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-Priority: 3 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 X-RFC2646: Format=Flowed; Response X-MSMail-Priority: Normal Xref: reader01.eternal-september.org comp.lang.ada:64057 List-Id: "Niklas Holsti" wrote in message news:ji2q1nFu6qeU1@mid.individual.net... ... > Except if someone invents new abstractions and needs a "raw memory" type > to implement them. Sure, but that should be a rarely used type, and it is best off in a corner, much like Unchecked_Conversion and other unsafe stuff. My design for a post-Ada langyage has a "Fixed_Vector" container for the purposes of interfacing; it supports setting component sizes so it should match any sort of interface. But most abstractions should be built on top of some sort of bounded or unbounded container. The implementation would spend much of its effort optimizing those basic containers rather than worrying about making arrays fast. You said something about slices of matrices being a common operation. And I agree with that, and it is one that Ada cannot support. It would be better if slices were implemented as a form of function, so that they can be used when they make sense (and only then). No reason to build in such things. (My post-Ada language design includes variable-returning functions, so that sort of need can be accomadated.) Randy.