From: donh@syd.csa.com.au (Don Harrison)
Subject: Re: Real OO (was Choice of OO primitives in Ada95)
Date: 1996/03/15
Date: 1996-03-15T00:00:00+00:00 [thread overview]
Message-ID: <DoAMDE.6uu@assip.csasyd.oz> (raw)
In-Reply-To: Do7unJ.1sq@world.std.com
In article <Do7unJ.1sq@world.std.com>, bobduff@world.std.com (Robert A Duff) writes:
:In article <Dns8pv.BDx@assip.csasyd.oz>,
:Don Harrison <donh@syd.csa.com.au> wrote:
:>Various arguments have been advanced to justify co-encapsulation. Below is a
:>collective response.
:>
:>1) Co-encapsulation preserves the symmetry of operands.
:>
:>As indicated in a previous post, the requirements of polymorphism demand that
:>operands are intrinsically asymmetric which suggests that uni-encapsulation is
:>more appropriate.
:
:Correct when there are two tagged types involved (unless you have
:multi-methods, as in CLOS).
:
:However, the symmetry is *not* lost when you have something like:
:
: procedure Union(X, Y: Set) return Set;
:
:In other OO languages, the parameter X is the special one, and symmetry
:is lost. Not a big deal, I admit, but I find it slightly cleaner,
:conceptually, to consider X and Y to be on equal footing.
I agree this visually more symmetrical. Of course, the operation still
semantically belongs to tagged type Set - it is a primitive operation of it.
:
:- Bob
:
Don.
next parent reply other threads:[~1996-03-15 0:00 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Do7unJ.1sq@world.std.com>
1996-03-15 0:00 ` Don Harrison [this message]
[not found] <Do7uyC.4K2@world.std.com>
1996-03-15 0:00 ` Real OO (was Choice of OO primitives in Ada95) Don Harrison
1996-02-22 0:00 Jean-Pierre Rosen
1996-02-22 0:00 ` Valery Croizier
1996-02-24 0:00 ` Robert A Duff
1996-02-22 0:00 ` Matt Kennel
1996-02-23 0:00 ` Robert A Duff
1996-02-22 0:00 ` Spencer Allain
1996-02-23 0:00 ` Jon S Anthony
-- strict thread matches above, loose matches on Subject: below --
1996-02-20 0:00 Choice of OO primitives in Ada95 Jon S Anthony
1996-02-22 0:00 ` Real OO (was Choice of OO primitives in Ada95) Don Harrison
1996-02-22 0:00 ` Jon S Anthony
1996-02-22 0:00 ` Robert Dewar
1996-02-23 0:00 ` Gene Ouye
1996-02-26 0:00 ` James O'Connor
1996-02-26 0:00 ` Gene Ouye
1996-02-24 0:00 ` Robert A Duff
1996-02-26 0:00 ` Matthew B. Kennel
1996-02-26 0:00 ` Don Harrison
1996-02-24 0:00 ` Valery Croizier
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox