comp.lang.ada
 help / color / mirror / Atom feed
From: Thomas.Kendelbacher@erno.de (Thomas Kendelbacher)
Subject: Re: Ada95 OOP Questions
Date: 1996/08/05
Date: 1996-08-05T00:00:00+00:00	[thread overview]
Message-ID: <4u4ln3$fur@mailsrv2.erno.de> (raw)
In-Reply-To: dewar.838959126@schonberg


In article <dewar.838959126@schonberg>, dewar@cs.nyu.edu (Robert Dewar) writes:
>Generally in Ada 83, people like to avoid use so that when they see
>Pkg.xyz they know that they can find the routine that will be called
>in Pkg (the spec in the spec of Pkg and the code in the body).
>
>The trouble is that with a dispatching call, you write Pkg.xyz and it
>does NOT mean that the code is in Pkg -- as Laurent noted, it does
>mean the relevant spec is in the spec of Pkg, but the whole point of
>dispatching is to make sure that at compile time you have no idea
>where the code that will actually be called resides, indeed the code
>may be in a unit that has not been written yet.
>
>A number of people find that confusing, and so are willing to onsider
>using "use" for the dispatching case.
>
>You may or may not agree, but it is certain that your previous Ada 83
>experience is not a useful guide here.

No, I don't agree at all. Sorry if there has been a thread on this before,
I have missed it, but I don't want to restart it either.

Just one sentence (or two :-):

When grep is your only tool to find out where a procedure FOO_BAR is defined,
then this IS a maintenance nightmare, especially for anyone who is not the
original author. You're right, my experience which leads me to avoid using use
comes from Ada 83, of course (how many large-scale Ada 95 systems are there?),
but the argument is still valid!

If the introduction of dispatching calls leads people to produce less
maintainable code, then this is a *bad* *thing*. (By the way, I don't think
it's confusing that the qualifier is the spec where the type is defined;
rather, it's a good starting point to narrow down the search for the real
code. Using use here leaves you with no clue at all! And this "confusing"
point is not peculiar to dispatching calls: it occurs with Ada 83 derived
types as well. Not new, although the "search direction" is reversed in that
case.)

Just my 2p.

-- 
Thomas Kendelbacher   |   email : Thomas.Kendelbacher@erno.de
DASA RI / Abt. RIT14  |   voice : +49 421 539 5492 (working hours)
Postfach 28 61 56     |      or : +49 421 57 04 37 (any other time)
D-28361 Bremen        |     fax : +49 421 539 4529 (any time)
Germany






  reply	other threads:[~1996-08-05  0:00 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-07-28  0:00 Ada95 OOP Questions Spasmo
1996-07-28  0:00 ` David C. Hoos, Sr.
1996-07-28  0:00   ` Spasmo
1996-07-28  0:00 ` Andre Spiegel
1996-07-28  0:00   ` Spasmo
1996-07-29  0:00     ` Thomas Kendelbacher
1996-07-31  0:00       ` Spasmo
1996-08-01  0:00         ` Thomas Kendelbacher
1996-08-02  0:00         ` Gene Ouye
1996-08-01  0:00       ` Jon S Anthony
1996-07-30  0:00     ` Ken Garlington
1996-08-04  0:00       ` Spasmo
1996-07-30  0:00     ` David Wheeler
1996-07-31  0:00       ` Spasmo
1996-07-29  0:00 ` Andre Spiegel
1996-07-29  0:00   ` David Wheeler
1996-07-30  0:00     ` Spasmo
1996-07-30  0:00     ` Spasmo
1996-07-29  0:00   ` Thomas Kendelbacher
1996-08-02  0:00     ` Robert Dewar
1996-08-05  0:00       ` Thomas Kendelbacher [this message]
1996-08-06  0:00         ` Robert I. Eachus
1996-08-06  0:00         ` Robert Dewar
1996-08-06  0:00           ` Thomas Kendelbacher
1996-08-06  0:00             ` Robert A Duff
1996-08-07  0:00               ` Robert Dewar
1996-08-08  0:00                 ` Robert A Duff
1996-08-09  0:00                   ` Robert Dewar
1996-08-12  0:00             ` Robert I. Eachus
1996-08-08  0:00           ` Theodore E. Dennison
1996-08-09  0:00             ` Robert Dewar
1996-08-12  0:00             ` Joel VanLaven
1996-08-10  0:00         ` Chris Morgan
1996-07-30  0:00 ` Robert I. Eachus
1996-07-30  0:00 ` Andre Spiegel
1996-07-30  0:00 ` Andre Spiegel
1996-08-01  0:00 ` Jon S Anthony
1996-08-13  0:00 ` Eric C. Newton
1996-08-14  0:00 ` Ken Garlington
1996-08-14  0:00 ` Jon S Anthony
1996-08-14  0:00 ` Eric C. Newton
1996-08-21  0:00 ` Jon S Anthony
  -- strict thread matches above, loose matches on Subject: below --
1996-08-08  0:00 W. Wesley Groleau (Wes)
1996-08-20  0:00 Farshad Nayeri
1996-08-21  0:00 ` Jon S Anthony
1996-08-20  0:00 Farshad Nayeri
replies disabled

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