From: "James A. Squire" <m193884@CSEHP3.MDC.COM>
Subject: Re: Subprogram Renaming
Date: 1996/04/09
Date: 1996-04-09T00:00:00+00:00 [thread overview]
Message-ID: <316AEA8D.7600@csehp3.mdc.com> (raw)
In-Reply-To: md5:FE4AB546A8392541EDC1E3FE12E3D8AF
Robert A Duff <bobduff@WORLD.STD.COM> wrote:
> In article <316951C3.CE4@csehp3.mdc.com>,
> James A. Squire <m193884@CSEHP3.MDC.COM> wrote:
> >> package q is
> >> procedure j;
> >> end q;
> >>
> >> package body q is
> >> ...
> >> procedure j renames k;
> >
> >which looks like a rename of a spec to me. I can do this in Ada83.
>
> No, the above is illegal in Ada 83. In Ada 83, you have two
> declarations of J, which are homographs, and therefore illegal. And you
> have a missing body for the first J, which is also illegal. The new
You are right about that. That comment was my mistake. However
(!!!)...
> thing in Ada 95 is that the renaming can act as the body of the first J.
> This is no big deal -- the renaming is just a short-hand notation for
> "procedure j is begin k; end;". But it was illegal in Ada 83.
Still (!) Nobody has answered the $64,000.00 question: WHY IS THIS SUCH
A GOOD THING? In other words, why did they waste their time adding this
ability to rename a subprogram body. Why should I do:
package q is
procedure j;
end q;
package body q is
procedure k;
procedure j renames k;
end q;
when I can do:
package q is
procedure k;
end q;
package body q is
procedure k is ...
end q;
Now that I KNOW I can do in Ada83. Since the parameter spec has to
match exactly, I see no point to doing a rename in the body and hiding
it from the user. All you are changing is the name it goes by. What's
the point?
> As Robert Dewar said, this has nothing to do with syntax rules -- the
> syntax for renamings is the same. The difference is where they're
> allowed, and what they mean. To find the rules, you have to look at the
> text under subprogram renamings (as opposed to just looking at the BNF
> syntax rules).
I read those - 8.5.4 and 6.3.1. What does "subtype of the profile"
mean?
--
James Squire
MDA Avionics Tools & Processes
ja_squire@csehp3.mdc.com
"one of these days I'm going to better myself by going to Knight school"
"You'll be a web knight instead of a web page!"
next parent reply other threads:[~1996-04-09 0:00 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <md5:FE4AB546A8392541EDC1E3FE12E3D8AF>
1996-04-09 0:00 ` James A. Squire [this message]
1996-04-09 0:00 ` Subprogram Renaming Robert Dewar
1996-04-10 0:00 ` Robert A Duff
1996-04-11 0:00 ` Mark A Biggar
1996-04-10 0:00 ` johndoe
1996-04-10 0:00 ` Norman H. Cohen
1996-04-11 0:00 ` Norman H. Cohen
1996-04-12 0:00 ` Jonas Nygren
1996-04-12 0:00 ` Norman H. Cohen
1996-04-13 0:00 ` Robert A Duff
1996-04-15 0:00 ` Norman H. Cohen
[not found] <md5:3CC2294B6049DDBD8790280EABCEDE81>
1996-04-12 0:00 ` James A. Squire
[not found] <md5:95D854EBD1A47E0E86027A3CC7DBD9A4>
1996-04-10 0:00 ` James A. Squire
1996-04-10 0:00 ` Robert Dewar
1996-04-11 0:00 ` Jonas Nygren
1996-04-11 0:00 ` Robert Dewar
1996-04-12 0:00 ` Jonas Nygren
1996-04-10 0:00 ` Robert A Duff
1996-04-11 0:00 ` Adam Beneschan
1996-04-11 0:00 ` Robert Dewar
1996-04-11 0:00 ` Robert A Duff
1996-04-10 0:00 ` johndoe
[not found] <md5:88A5E8822105A2023A0A951BB5EC646E>
1996-04-10 0:00 ` James A. Squire
[not found] <md5:87494FB95037B9578F62831DE10B6BB3>
1996-04-10 0:00 ` James A. Squire
[not found] <md5:046A59600C3FEFC327385C3E914D6997>
1996-04-08 0:00 ` James A. Squire
1996-04-08 0:00 ` Robert Dewar
1996-04-09 0:00 ` Gary McKee
1996-04-09 0:00 ` Robert A Duff
[not found] <md5:C24D8C2EE138D9627FB8B93E2E35D9F3>
1996-04-05 0:00 ` James A. Squire
1996-04-06 0:00 ` Robert Dewar
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox