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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,2308afbbe4ecec0b X-Google-Attributes: gid103376,public From: Robert A Duff Subject: Re: Subverting 'Access for Sub-programs Date: 1999/08/11 Message-ID: #1/1 X-Deja-AN: 511434773 Sender: bobduff@world.std.com (Robert A Duff) References: <37A71EF1.2201@dera.gov.uk> <37A7FDE8.4F5@dera.gov.uk> <7o9vrv$qgt$1@wanadoo.fr> <7oc5ih$6mb$1@wanadoo.fr> <7oejga$28i$1@nnrp1.deja.com> <37AEF7BF.7BBC8E06@averstar.com> <7oqahu$3s0$1@nnrp1.deja.com> Organization: The World Public Access UNIX, Brookline, MA Newsgroups: comp.lang.ada Date: 1999-08-11T00:00:00+00:00 List-Id: Robert Dewar writes: > Yes, this would be annoying for the display folks, because, just > as is necessary in Pascal if you use displays, you need to save > the display as part of a subprogram access value. THis is not ^^^ > possible, but it is probably not the right approach. ^^^^^^^^ I think that's a typo -- you meant "not IMpossible" = "possible"? I know of one Pascal compiler that used displays and implemented downward closures, which proves that it's not only possible, but feasible. But I agree that it's not the right aproach. > Yes, we probably want the limited-access types that are > completely safe, but I would also put in the Unchecked_Access > possibility, since it will cover additional useful cases. You've convinced *me* that the Unch_Acc on subprogs has its uses. Tucker, on the other hand, has a different point of view toward nesting in general ("for the birds"). >... I > would not go as far as the Unrestricted_Access semantics of > GNAT for objects in any case as part of a semi-standard proposal > since aspects of this (accesses-to-slices for example) are > highly implementation dependent. One thing that bothers me about the object'un_acc thing, is that if the object is not addressable (component of something packed), then it just gives a "wrong" answer -- wrong in the sense that the result doesn't point at the object. At least that's my understanding, since you've defined 'unr_acc in terms of 'address, which also has this unfortunate behavior. - Bob -- Change robert to bob to get my real email address. Sorry.