comp.lang.ada
 help / color / mirror / Atom feed
From: Ray Blaak <blaak@telus.net>
Subject: Re: Ada2005
Date: 19 Dec 2001 11:19:01 -0800
Date: 2001-12-19T11:19:01-08:00	[thread overview]
Message-ID: <ubsgvnhlm.fsf@telus.net> (raw)
In-Reply-To: ZT4U7.8830$Ah.485000@rwcrnsc52

"Mark Lundquist" <no.spam@getalife.com> writes:
> "Ray Blaak" <blaak@telus.net> wrote in message
> Doesn't it make a mishmash of the name resolution rules?  Consider
> 
>         type Note is private;
> 
>         function Pitch (Subject : Note) return Note_Properties.Pitch;
>         function Length (Subject : Note) return Note_Properties.Length;
> 
>     private
> 
>         type Note is record
>             Pitch : Note_Properties.Pitch;
>             Length : Note_Properties.Lenght;
>         end record;
> 
> In the body of the package, how do you resolve the name "X.Pitch" for an X
> of type Note?

First off, I should say that I am not strongly advocating this change to be
made to Ada, even though I would prefer if I could do this kind of thing.

This is really only a thought experiment.

At any rate, I would resolve X.Pitch by saying that record fields "win" if the
field is accessible. The Pitch method would win only if:

a) Note is accessible as a tagged type at the point of call
b) Pitch is not accessible as a field at the point of call
c) Pitch is accessible as a primitive operation at the point of call

If both the field and method are accessible and are ambiguous, one could just
choose the field, since that is existing Ada semantics. A warning about the
ambiguity could possibly also be reported, so as to inform the user.

For regular record types (or any other type, for that matter), this syntactic
transformation need not apply.

I only prefer it for OO programming, where I tend to think in terms of asking
an object to do something, as opposed to asking something to be done to an
object, if you know what I mean.

-- 
Cheers,                                        The Rhythm is around me,
                                               The Rhythm has control.
Ray Blaak                                      The Rhythm is inside me,
blaak@telus.net                                The Rhythm has my soul.



  reply	other threads:[~2001-12-19 19:19 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-12-11  9:33 Ada2005 Peter Hermann
2001-12-11 11:05 ` Ada2005 M. A. Alves
2001-12-11 11:55   ` Ada2005 Aaro Koskinen
2001-12-11 14:49     ` Ada2005 Wes Groleau
2001-12-11 14:58     ` Ada2005 Marin David Condic
2001-12-11 15:18       ` Ada2005 Ted Dennison
2001-12-12  8:37       ` Ada2005 Alfred Hilscher
2001-12-11 11:23 ` Ada2005 Martin Dowie
2001-12-11 11:54 ` Ada2005 Preben Randhol
2001-12-11 12:06 ` Ada2005 Larry Kilgallen
2001-12-11 14:39 ` Ada2005 Ted Dennison
2001-12-12  4:39   ` Ada2005 Jeffrey Carter
2001-12-13 18:39   ` Ada2005 Randy Brukardt
2001-12-12 11:29 ` Ada2005 Peter Hermann
2001-12-12 12:42   ` Ada2005 Larry Kilgallen
2001-12-12 12:51   ` Ada2005 Martin Dowie
2001-12-12 12:59   ` Ada2005 Carsten Freining
2001-12-12 14:40     ` Ada2005 Peter Hermann
2001-12-12 15:16       ` Ada2005 Ted Dennison
2001-12-12 15:37         ` Ada2005 Larry Kilgallen
2001-12-12 17:49           ` Ada2005 Ted Dennison
2001-12-12 18:02         ` Ada2005 tmoran
2001-12-12 18:17           ` Ada2005 Ted Dennison
2001-12-12 18:31             ` Ada2005 Sergey Koshcheyev
2001-12-12 19:08               ` Ada2005 Ted Dennison
2001-12-12 18:14         ` Ada2005 Mark Lundquist
2001-12-12 18:40           ` Ada2005 Ted Dennison
2001-12-12 19:12             ` Ada2005 Mark Lundquist
2001-12-12 19:41               ` Ada2005 Ted Dennison
2001-12-13 20:07         ` Ada2005 Ted Dennison
2001-12-14  4:40       ` Ada2005 Patrick Hohmeyer
2001-12-14  9:55         ` Ada2005 Lutz Donnerhacke
2001-12-14 10:36         ` Ada2005 Dmitry A. Kazakov
2001-12-17 18:40         ` Ada2005 Matthew Heaney
2001-12-12 18:04     ` Ada2005 Mark Lundquist
2001-12-12 21:25       ` Ada2005 Mark Lundquist
2001-12-13 18:40         ` Ada2005 Stephen Leake
2001-12-13 19:01           ` Ada2005 Mark Lundquist
2001-12-14 17:17             ` Ada2005 Stephen Leake
2001-12-13  9:11       ` Ada2005 Dmitry A. Kazakov
2001-12-17 17:50         ` Ada2005 Ray Blaak
2001-12-18 11:55           ` Ada2005 Dmitry A. Kazakov
2001-12-18 19:51             ` Ada2005 Ray Blaak
2001-12-19  8:34               ` Ada2005 Dmitry A. Kazakov
2001-12-19 13:30                 ` Ada2005 Mark Lundquist
2001-12-19 18:23                 ` Ada2005 Ray Blaak
2001-12-19 18:20           ` Ada2005 Mark Lundquist
2001-12-19 19:19             ` Ray Blaak [this message]
2001-12-20 14:17             ` Ada2005 Dmitry A. Kazakov
2001-12-20 11:24       ` Ada2005 Carsten Freining
2001-12-20 14:27         ` Ada2005 Mark Lundquist
2001-12-20 15:01         ` Ada2005 Matthew Woodcraft
2001-12-20 15:45         ` Ada2005 Mark Lundquist
2001-12-20 16:20           ` Ada2005 Mark Lundquist
2001-12-13 18:13     ` Ada2005 Georg Bauhaus
2001-12-20 16:34 ` Math Libraries (was Re: Ada2005) Marin David Condic
2001-12-20 20:14   ` FGD
2001-12-20 20:34     ` Marin David Condic
2001-12-21 17:21       ` FGD
2001-12-21 18:08         ` Marin David Condic
2001-12-21 19:40           ` tmoran
2001-12-21 19:45             ` Marin David Condic
2001-12-21 20:35             ` Dan Nagle
2001-12-21 20:31           ` Eric Merritt
2001-12-22 16:56           ` Math Update for Ada 2005 Steven Deller
2001-12-23 15:13             ` Robert Dewar
2001-12-23 22:43               ` Brian Rogoff
2001-12-22 21:48           ` Math Libraries (was Re: Ada2005) FGD
2002-01-02 14:20         ` Jacob Sparre Andersen
2001-12-20 23:20   ` Robert C. Leif, Ph.D.
2001-12-21 14:49     ` Marin David Condic
  -- strict thread matches above, loose matches on Subject: below --
2001-12-12 14:05 Ada2005 Peter Hermann
2002-12-17  7:15 Ada2005 Karel Miklav
2002-12-17 11:43 ` Ada2005 Peter Amey
2002-12-17 15:11   ` Ada2005 Robert A Duff
2002-12-17 14:14 ` Ada2005 Ted Dennison
2002-12-17 15:54   ` Ada2005 Peter Hermann
2002-12-18  9:04     ` Ada2005 Anders Wirzenius
2002-12-18 14:48       ` Ada2005 Ted Dennison
2002-12-19  9:01         ` Ada2005 Anders Wirzenius
2005-03-24 14:36 Ada2005 Szymon Guz
2005-03-24 15:30 ` Ada2005 Xaelis
2005-03-24 15:32 ` Ada2005 Larry Kilgallen
replies disabled

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