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: Calling inherited primitive operations in Ada Date: Fri, 2 Sep 2022 19:12:25 -0500 Organization: A noiseless patient Spider Message-ID: References: <67b32db0-c4db-466c-ac13-e597e008c762n@googlegroups.com> <401d6f59-2c28-4dd5-9fa6-fccf33b6d645n@googlegroups.com> <12cc33b1-2c39-4057-8a03-623064b06e8en@googlegroups.com> <672e9bc6-1e53-42cb-a339-9230ab949de9n@googlegroups.com> Injection-Date: Sat, 3 Sep 2022 00:12:27 -0000 (UTC) Injection-Info: reader01.eternal-september.org; posting-host="540bec0664a3fed56c5bc4112da1ca1f"; logging-data="2820410"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/NDb6BL7vHrRO70yEqhk1/H6HHCNR6uvY=" Cancel-Lock: sha1:S3oiq9/7rfhuCVEm+TuV1tNeGK0= X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 X-Priority: 3 X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-MSMail-Priority: Normal X-RFC2646: Format=Flowed; Response Xref: reader01.eternal-september.org comp.lang.ada:64280 List-Id: "Dmitry A. Kazakov" wrote in message news:teso01$16gg$1@gioia.aioe.org... > On 2022-09-02 12:41, Jeffrey R.Carter wrote: > >> The only indefinite data structure that is needed seems to be holders. > > The language should support and encourage design that does not rely on > memory pools. > > In my view one of major advantages of Ada is that indefinite objects can > be handled without resorting to hidden or explicit pointers to pools. But they're implemented with some sort of hidden allocation. (GNAT uses a "secondary stack", whatever that is, but that is just a restricted form of pool). Janus/Ada uses built-in pools with cleanup for all such things to simplify the interface (the code for allocations and stand-alone objects is mostly shared, both within the compiler and at runtime). Randy.