From mboxrd@z Thu Jan 1 00:00:00 1970 Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Map iteration and modification Date: Tue, 2 Jan 2024 21:22:00 -0600 Organization: A noiseless patient Spider Message-ID: References: Injection-Date: Wed, 3 Jan 2024 03:21:16 -0000 (UTC) Injection-Info: dont-email.me; posting-host="56dd089a60772e36f9749f23e307c802"; logging-data="3246222"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+DbqTZ/KCjcGH668FV25yfYfMBlZWgsWA=" Cancel-Lock: sha1:W6abW4IMgCIcwLJ7dN4ZN7ERAIc= X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-Priority: 3 X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 X-RFC2646: Format=Flowed; Response Xref: news.eternal-september.org comp.lang.ada:65954 List-Id: "Dmitry A. Kazakov" wrote in message news:umv8rg$2b4on$1@dont-email.me... ... > It is same benefit Ada arrays have over C's T* pointers and arithmetic of. > Cursor is merely a fat pointer. A cursor is an abstract reference. It *might* be implemented with a pointer or with an array index. Indeed, the bounded containers pretty much have to be implemented with an underlying array. It would be nice if there was some terminology for abstract references that hadn't been stolen by some programming language. Terms like "pointer" and "access" and "reference" all imply an implementation strategy. That's not relevant most of the time, and many programming language design mistakes follow from that. (Anonymous access types come to mind). Randy.