From: Mats Weber <Mats.Weber@elca-matrix.ch>
Subject: Re: Equality operator overloading in ADA 83
Date: 1997/04/29
Date: 1997-04-29T00:00:00+00:00 [thread overview]
Message-ID: <3365BC3E.54C5@elca-matrix.ch> (raw)
In-Reply-To: dewar.861851658@merv
Robert Dewar wrote:
>
> Mats Weber said
>
> <<> Composability should always be guaranteed by user-defined types, too.
>
> There seems to be much disagreement on this question for all kinds of
> reasons. But I agree with you 100%.>>
>
> It is helpful if you make clear whether you are making a pronouncement about
> the original Ada 83 design or the decision not to introduce upwards
> incompatibilities in the Ada 95 redesign (I trust you are NOT making a
> statement about Ada 95 implementations :-)
My pronouncement is about Ada 95; Ada 83 was "clean" with respect to
equality because of the strict rules on its redefinition (if we don't
count the unexpected possibility of redefining it for non-limited types)
and the fact that it does not automatically compose when some component
is of a limited type.
My view is that if you allow redefinition of "=", then you must make
sure it behaves (composes, does not reemerge) correctly, which was not
done in Ada 95 except for tagged types.
I also think that the upward incompatibilities that the non-reemergence
of predefined operations would have introduced are minimal compared to
how a programmer is betrayed when he writes
type T is private;
function "=" (L, R : T) return Boolean;
and the predefined "=" reemerges in some places with an unknown effect
since the type is private.
next prev parent reply other threads:[~1997-04-29 0:00 UTC|newest]
Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top
1997-04-21 0:00 Equality operator overloading in ADA 83 Manuel Wenger
1997-04-22 0:00 ` Matthew Heaney
1997-04-22 0:00 ` Philip Brashear
1997-04-22 0:00 ` Mats Weber
1997-04-22 0:00 ` Matthew Heaney
1997-04-23 0:00 ` Mats Weber
1997-04-23 0:00 ` Robert A Duff
1997-04-25 0:00 ` Kevin Cline
1997-04-25 0:00 ` Matthew Heaney
1997-04-25 0:00 ` Robert A Duff
1997-04-25 0:00 ` Jon S Anthony
1997-04-27 0:00 ` Robert Dewar
1997-04-28 0:00 ` Robert I. Eachus
1997-04-29 0:00 ` Jon S Anthony
1997-04-26 0:00 ` Robert Dewar
1997-04-27 0:00 ` Matthew Heaney
1997-04-27 0:00 ` Robert A Duff
1997-04-25 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert Dewar
1997-04-26 0:00 ` Matthew Heaney
1997-04-22 0:00 ` Robert A Duff
1997-04-22 0:00 ` Matthew Heaney
1997-04-23 0:00 ` Mats Weber
1997-04-23 0:00 ` Robert A Duff
1997-04-24 0:00 ` Mats Weber
1997-04-24 0:00 ` Matthew Heaney
1997-04-25 0:00 ` Robert Dewar
1997-04-25 0:00 ` Matthew Heaney
1997-04-26 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert Dewar
1997-04-25 0:00 ` Robert Dewar
1997-04-25 0:00 ` Matthew Heaney
1997-04-26 0:00 ` Robert Dewar
1997-04-26 0:00 ` Fergus Henderson
1997-04-26 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert Dewar
1997-04-27 0:00 ` Robert Dewar
1997-04-24 0:00 ` Robert A Duff
1997-04-24 0:00 ` Robert Dewar
1997-04-25 0:00 ` Robert A Duff
1997-04-26 0:00 ` Nick Roberts
1997-04-26 0:00 ` Robert Dewar
1997-04-26 0:00 ` Matthew Heaney
1997-05-02 0:00 ` Nick Roberts
1997-05-04 0:00 ` Robert Dewar
1997-05-05 0:00 ` Mats Weber
1997-05-05 0:00 ` Robert Dewar
1997-05-06 0:00 ` Matthew Heaney
1997-05-06 0:00 ` Robert Dewar
1997-05-07 0:00 ` Tucker Taft
1997-05-05 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert Dewar
1997-04-27 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert Dewar
1997-04-28 0:00 ` Simon Wright
1997-04-29 0:00 ` Robert I. Eachus
1997-04-29 0:00 ` Mats Weber
1997-05-01 0:00 ` Robert Dewar
[not found] ` <01bc571c$01f3ffc0$5de2b8cd@p5120.bda>
1997-05-03 0:00 ` Robert Dewar
1997-04-27 0:00 ` Robert Dewar
1997-04-27 0:00 ` Fergus Henderson
1997-04-27 0:00 ` Robert Dewar
1997-04-28 0:00 ` Fergus Henderson
1997-04-28 0:00 ` Robert Dewar
1997-04-25 0:00 ` Kevin Cline
1997-04-25 0:00 ` Robert A Duff
1997-04-25 0:00 ` Mats Weber
1997-04-27 0:00 ` Robert Dewar
1997-04-29 0:00 ` Mats Weber
1997-04-25 0:00 ` Mats Weber
1997-04-25 0:00 ` Robert Dewar
1997-04-29 0:00 ` Mats Weber
1997-05-01 0:00 ` Robert Dewar
1997-04-25 0:00 ` Mats Weber
1997-04-27 0:00 ` Geert Bosch
1997-04-28 0:00 ` Robert Dewar
1997-04-29 0:00 ` Matthew Heaney
1997-05-01 0:00 ` Robert Dewar
1997-04-29 0:00 ` Mats Weber
1997-04-29 0:00 ` Robert A Duff
1997-04-29 0:00 ` Matthew Heaney
1997-05-02 0:00 ` Tucker Taft
1997-05-02 0:00 ` Robert Dewar
1997-05-02 0:00 ` Robert A Duff
1997-05-03 0:00 ` Robert Dewar
1997-05-01 0:00 ` Robert Dewar
1997-04-28 0:00 ` Robert Dewar
1997-04-23 0:00 ` Robert Dewar
1997-04-24 0:00 ` Robert A Duff
1997-04-29 0:00 ` Mats Weber [this message]
1997-05-01 0:00 ` Robert Dewar
1997-04-24 0:00 ` Robert Dewar
1997-04-22 0:00 ` Mats Weber
1997-04-24 0:00 ` Robert Dewar
1997-04-24 0:00 ` Robert A Duff
1997-04-25 0:00 ` Robert Dewar
1997-04-25 0:00 ` Matthew Heaney
1997-04-26 0:00 ` Robert Dewar
1997-04-26 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert Dewar
1997-04-26 0:00 ` Matthew Heaney
1997-04-27 0:00 ` Robert Dewar
1997-04-27 0:00 ` Robert A Duff
1997-04-26 0:00 ` Robert Dewar
1997-05-02 0:00 ` Nick Roberts
1997-05-04 0:00 ` Robert Dewar
1997-04-26 0:00 ` Robert Dewar
1997-04-26 0:00 ` Matthew Heaney
1997-04-27 0:00 ` Robert A Duff
1997-04-22 0:00 ` Kevin Cline
1997-04-22 0:00 ` Mark A Biggar
1997-04-24 0:00 ` Keith Thompson
1997-04-22 0:00 ` Mats Weber
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox