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,9640b17421044f1a X-Google-Attributes: gid103376,public From: Robert A Duff Subject: Re: accesibility level problem Date: 1999/03/01 Message-ID: #1/1 X-Deja-AN: 450038498 Sender: bobduff@world.std.com (Robert A Duff) References: <36CD206A.32D96489@systems.at> <36CDE45C.5B5E04D8@lmco.com> <7alc7m$uo2$1@nnrp1.dejanews.com> Organization: The World Public Access UNIX, Brookline, MA Newsgroups: comp.lang.ada Date: 1999-03-01T00:00:00+00:00 List-Id: robert_dewar@my-dejanews.com writes: >...It is our > experience that talking about accessibility levels is > not illuminating to the typical user, and the sections of > the RM describing the accessibility rules are notoriously > complex (ask Bob Duff's opinion, he was their author and > I believe he has said he finds them hard to understand :-) True. We totally rewrote that section several times during the language design, with different terminology, desperately trying to make it both correct in detail, and easy to understand. IMHO, we didn't succeed in the second part, and I don't know how to do better. So I agree with Robert that the compiler should say something vague about the underlying rationale. You've *got* to understand that rationale in order to program in Ada or C or anything similar! I think the original poster wondered why it was all based on the access type, and not on the object. The problem is that the object declaration doesn't contain any information about where the thing points, and we didn't want to do it all with run-time checks (although Tucker invented access parameters fairly late in the game, and they allow a limited form of run-time checking). - Bob -- Change robert to bob to get my real email address. Sorry.