comp.lang.ada
 help / color / mirror / Atom feed
From: bobduff@world.std.com (Robert A Duff)
Subject: Re: "use" clauses and Ada 95 OOP
Date: 1996/07/26
Date: 1996-07-26T00:00:00+00:00	[thread overview]
Message-ID: <Dv4MoD.B7s@world.std.com> (raw)
In-Reply-To: 4t7vet$ot8@newsbf02.news.aol.com


In article <4t7vet$ot8@newsbf02.news.aol.com>,
JamesS1889 <jamess1889@aol.com> wrote:
>Not to mention that without the USE clause, the visibility you get is
>misleading.  Yep, Robert, I do believe you "have it surrounded".

Not sure what you mean, there.  Normally, when dispatching, you have NO
visibility on what you're calling, whether or not you use use.  So,
either way, a programmer who wants to dispatch has to understand that
the thing being called has nothing whatsoever to do with what is
visible.

>Just out of curiosity, though.  Somebody said that WG9 considered making
>all operators obsolete (addressing a slightly different issue).

Obsolete?  Heh?

I think I said that the MRT proposed that primitive operators should be
directly visible by default.  WG9 didn't like that, partly because of
upward compatibility concerns.  So we invented "use type" as a
compromise.

It's kind of hard to explain to a beginner why:

    while X /= null loop ...

doesn't work, because "/=" is not directly visible.  But null is visible
everywhere.  Weird.  OK, it has to do with the fact that "/=" can be
defined by the user (well, "=" can, and then you get "/=" for free).
The beginner reasonably says, "But I *never* want to redefine
operators."

>...  I was
>wondering if WG9 considered do what I misunderstood Robert Eachus to be
>implying, namely, make "use type" apply also to primitive subprograms of a
>tagged type?

No.  As far as I know, nobody ever proposed that.  Anyway, that's pretty
close to what a plain old use-package clause does.

- Bob




  reply	other threads:[~1996-07-26  0:00 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-07-17  0:00 "use" clauses and Ada 95 OOP Mitch Gart
1996-07-19  0:00 ` James A. Squire
1996-07-22  0:00   ` Stephen Schmid
1996-07-23  0:00     ` Laurent Guerby
1996-07-23  0:00       ` Robert A Duff
1996-07-23  0:00     ` JamesS1889
1996-07-23  0:00     ` Mitch Gart
1996-07-23  0:00       ` Kevin J. Weise
1996-07-23  0:00       ` Kevin J. Weise
1996-07-23  0:00         ` JamesS1889
1996-07-23  0:00       ` Robert Dewar
1996-07-25  0:00         ` JamesS1889
1996-07-26  0:00           ` Robert A Duff [this message]
1996-07-23  0:00       ` Robert A Duff
1996-07-23  0:00     ` JamesS1889
1996-07-24  0:00     ` Jon S Anthony
1996-07-24  0:00     ` Jon S Anthony
1996-07-19  0:00 ` Jon S Anthony
1996-07-19  0:00 ` Robert I. Eachus
1996-07-23  0:00   ` Robert I. Eachus
1996-07-25  0:00     ` JamesS1889
1996-07-23  0:00   ` JamesS1889
1996-07-23  0:00     ` Robert Dewar
1996-07-24  0:00     ` Robert I. Eachus
1996-07-24  0:00   ` Jon S Anthony
1996-07-20  0:00 ` James A. Squire
1996-07-21  0:00   ` Robert A Duff
1996-07-22  0:00 ` Jon S Anthony
1996-07-23  0:00 ` Jon S Anthony
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox