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!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Prefixed notation for non tagged types Date: Sun, 17 Dec 2017 15:06:36 +0000 Organization: A noiseless patient Spider Message-ID: References: <1ac5a44b-4423-443a-a7bb-2864d9abe78f@googlegroups.com> <3df6404a-588d-4e2d-a189-1d1e32ce9f5d@googlegroups.com> <73b4a9bd-1f3b-42b9-9ef7-5303b0a88794@googlegroups.com> <427478f8-298f-49b3-9cc1-4cfd58da6bd4@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: reader02.eternal-september.org; posting-host="3f41b491fdd47876fabda00b5a72648a"; logging-data="2018"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18MKLDXs1WAbbxKVLryfw0fxZXyP2hPJOU=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (darwin) Cancel-Lock: sha1:QKarBpwJdn1bkq8hKNkx8oM4ak4= sha1:Igg8iZlcqA2gnocFvmSvOY8NcQU= Xref: reader02.eternal-september.org comp.lang.ada:49502 Date: 2017-12-17T15:06:36+00:00 List-Id: Jere writes: > On Monday, July 3, 2017 at 10:18:33 PM UTC-4, Randy Brukardt wrote: >> "Jere" wrote in message >> > On Sunday, July 2, 2017 at 8:04:56 PM UTC-4, Randy Brukardt wrote: >> >> (3) Since prefixed notation does automatic dereferencing and referencing >> >> (that is, .all and 'Access), allowing it on all types caused levels of >> >> ambiguity (and potentially infinite regress). It was easier to just >> >> define >> >> it on tagged types, which didn't have those issues. Perhaps it could have >> >> been made to work, but it was more work for a feature that already had >> >> significant opposition; probably it would have been dropped rather than >> >> getting more complicated. (Sound like a broken record??) >> > >> > Was there any consideration to having prefixed notation to >> > apply to all record types and add a way to denote that a private >> > type is a record type (there should be many ways to do that)? >> > We don't really need it on all types, just record types. >> >> Not that I recall, but requiring an indication that a private type is >> completed by a record seems like noise (99% of private types are completed >> by some sort of record as it is). It would be better the other way around >> (indicate when it is *not* completed by a record), but of course that would >> be incompatible. Still seems best for Ada'Succ. >> >> Randy. > > I know this is an old email chain, but I've been thinking about this > more recently. For background, I asked if there could be a way to > denote that a private type was a record type, so that Prefixed notation > could be used on non tagged types. Randy noted that since most private > types were record types, it would just be noise. I wanted to revisit > this thought. Forgive me if there is a good way to split the chain. > I don't know how to do that. I don't understand why prefixed notation should be limited to private types that are completed by records? Naturally, I wasn't involved in any ARG discussions about this (not being a member!), but I'd have thought the ideal would be for any derived type (which includes private types, I think?) to be a candidate.