From: sbelmont700@gmail.com
Subject: Re: Access parameters and accessibility
Date: Mon, 15 Dec 2014 17:10:28 -0800 (PST)
Date: 2014-12-15T17:10:28-08:00 [thread overview]
Message-ID: <4f547857-ea9e-4baf-a705-911fbf9c633d@googlegroups.com> (raw)
In-Reply-To: <m6n3kr$t51$1@speranza.aioe.org>
>
> Could someone give an example/explanation where this rule is used?
> I tried to read the RM. Chapter 3.10.2 seems to be the right one but I
> don't understand it either...
>
As others have pointed out, anonymous access types are 'expert friendly' at best, and there is a whole host of history and compromises as to why they are how they are, most of which are obsolete in 2012. For 99% of situations, you don't have to lose any sleep over any of this (though I disagree with the 'never ever ever' attitude of others).
However, long story short, using an 'access parameter' (i.e. an anonymous access type as a subprogram parameter) requires passing along some meta-data about the object for various esoteric situations when a runtime check might be required. However, as the author points out, there are some (even rarer) cases where what would normally require a runtime check would be statically known to be ok, and thus could be performed without risk. That's all it's saying.
This is compiler detail, not a language rule, so I would doubt you would find it in the LRM (perhaps in the AARM, as a note?) If you are a masochist, the same author produced a whitepaper back in the day going into much more gory detail about all this (ACM Ada Letters, Jan/Feb 1995, page 45 specifically).
-sb
next prev parent reply other threads:[~2014-12-16 1:10 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-15 16:52 Access parameters and accessibility Michael B.
2014-12-15 17:54 ` Dmitry A. Kazakov
2014-12-15 18:48 ` Jeffrey Carter
2014-12-15 20:23 ` Michael B.
2014-12-15 21:02 ` Dmitry A. Kazakov
2014-12-16 1:10 ` sbelmont700 [this message]
2014-12-16 13:57 ` Michael B.
2014-12-16 14:12 ` Georg Bauhaus
2014-12-16 21:34 ` sbelmont700
2014-12-17 14:30 ` Michael B.
2014-12-17 15:41 ` sbelmont700
2014-12-18 17:48 ` Michael B.
2014-12-17 16:03 ` Adam Beneschan
2014-12-18 16:07 ` Michael B.
2014-12-16 7:45 ` Randy Brukardt
2014-12-16 8:48 ` Stefan.Lucks
2014-12-16 20:47 ` Randy Brukardt
2014-12-16 21:24 ` Georg Bauhaus
2014-12-16 9:08 ` Natasha Kerensikova
2014-12-16 10:00 ` Dmitry A. Kazakov
2014-12-16 14:57 ` Robert A Duff
2014-12-16 19:46 ` Michael B.
2014-12-16 20:59 ` Randy Brukardt
2014-12-17 7:02 ` Natasha Kerensikova
2014-12-17 8:28 ` Dmitry A. Kazakov
2014-12-17 9:06 ` Natasha Kerensikova
2014-12-17 22:58 ` Randy Brukardt
2014-12-17 22:25 ` Randy Brukardt
2014-12-18 0:47 ` Shark8
2014-12-17 2:02 ` Adam Beneschan
2014-12-17 23:18 ` Randy Brukardt
2014-12-18 0:56 ` Robert A Duff
2014-12-18 1:17 ` Randy Brukardt
2014-12-18 5:29 ` Shark8
2014-12-18 23:12 ` Randy Brukardt
2014-12-18 8:27 ` Dmitry A. Kazakov
2014-12-18 21:20 ` Randy Brukardt
2014-12-19 12:16 ` Michael B.
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox