comp.lang.ada
 help / color / mirror / Atom feed
From: Dmitry A. Kazakov <mailbox@dmitry-kazakov.de>
Subject: Re: Extension of non-limited type needs limited component
Date: Fri, 15 Nov 2002 13:12:38 +0100
Date: 2002-11-15T13:12:38+01:00	[thread overview]
Message-ID: <h7o9tukhr9q0kauh31r698eft5qb4riqip@4ax.com> (raw)
In-Reply-To: mailman.1037357704.32000.comp.lang.ada@ada.eu.org

On Fri, 15 Nov 2002 11:47:49 +0100 (MET), "Grein, Christoph"
<christoph.grein@eurocopter.com> wrote:

>> >This is not SmallTalk, where you can dispatch to a method that does not
>> >exist.
>> 
>> Sure? And what about this:
>> 
>> type A is tagged ...
>> procedure Foo (L, R : A);
>> 
>> type B is new A with ....
>> 
>> X : A'Class := Some_A;
>> Y : A'Class := Some_B;
>> 
>> Foo (X, Y); -- Oops, dispatching to nowhere!
>
>Either compiler catches this and does not compile.
>Or during runtime, tag check is performed and will raise Constraint_Error.
>
>No dispatching to nowhere!

Of course. Under dispatching to nowhere I just meant dispatching to a
non-existing method:

Foo (L : A; R: B);

Both Ada and SmallTalk [AFAIK] do not crash when such thing happens.
But this is not the problem. The problem is that though one could wish
to detect all such and similar cases at compile time, one cannot. This
does not mean that we should drop compile-time checks. [To put it
clear, Ada is right, SmallTalk is wrong! (:-))] It only means that the
argument, "this is not allowed, because it cannot be fully checked at
compile time" is wrong. Alas, there are many damn useful things
uncheckable at compile time.

---
Regards,
Dmitry Kazakov
www.dmitry-kazakov.de



  reply	other threads:[~2002-11-15 12:12 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-15 10:47 Extension of non-limited type needs limited component Grein, Christoph
2002-11-15 12:12 ` Dmitry A. Kazakov [this message]
2002-11-15 13:29   ` Jean-Pierre Rosen
2002-11-15 14:34     ` Dmitry A. Kazakov
2002-11-15 21:26     ` Robert A Duff
  -- strict thread matches above, loose matches on Subject: below --
2002-11-13 10:03 Mike
2002-11-13 12:06 ` Jean-Pierre Rosen
2002-11-14  9:26   ` Mike
2002-11-14 11:43     ` David C. Hoos, Sr.
2002-11-14 12:33     ` Jean-Pierre Rosen
2002-11-14 14:27       ` Dmitry A. Kazakov
2002-11-14 19:25         ` Randy Brukardt
2002-11-15 10:04           ` Dmitry A. Kazakov
2002-11-15 22:09             ` Robert A Duff
2002-11-16 12:39               ` Dmitry A. Kazakov
2002-11-16 16:15                 ` Robert A Duff
2002-11-17 11:14                   ` Dmitry A. Kazakov
2002-11-17 12:26               ` Dale Stanbrough
2002-11-18 20:33                 ` Randy Brukardt
2002-11-18 21:48               ` Eric
2002-11-19 14:38               ` Eric
2002-11-15 21:41           ` Robert A Duff
2002-11-16  3:54             ` Randy Brukardt
2002-11-15  0:30         ` Robert A Duff
2002-11-15 10:22           ` Dmitry A. Kazakov
2002-11-15 21:56             ` Robert A Duff
2002-11-16 12:39               ` Dmitry A. Kazakov
2002-11-14 23:39     ` Robert A Duff
2002-11-15 21:51       ` Mike
2002-11-13 14:28 ` Robert A Duff
2002-11-14  9:33   ` Mike
2002-11-14  9:35     ` Lutz Donnerhacke
2002-11-14 21:41     ` Robert A Duff
replies disabled

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