At 01:12 PM 11/12/98 -0800, Mark Lundquist wrote:
>> Adding special notation for declaring classes in Ada would have created
>         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>> either some unnecessary restrictions or backward compatibility problems.
>
>Yes -- that is the position I was taking.  My use of the phrase "special
>class construct" is to be understood as identical with your phrase
>"special notation for declaring classes".

   Okay.  If you regard "a package specification containing a single tagged
type declaration and declarations of operations on that type," as equivalent
to a class in other languages, you could consider that as a special class
construct.  But part of my point was that having a "special notation" would
have eliminated the possibility of defining several classes/tagged types
in the same package. Because of this--and the 'Class operation you can
create classes that are closely intertwined.  (It would be nice to be able
to easily create such mutually interdependent types in different packages,
but that is a different discussion.) Of course, there is a rule preventing
operations from being dispatching operation of more than one tagged type,
but that is needed for
other reasons.

                                        Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...