comp.lang.ada
 help / color / mirror / Atom feed
From: Stephen Leake <stephen.a.leake.1@gsfc.nasa.gov>
Subject: Re: Sugestion to Multiple Inheritance
Date: 17 Jan 2002 09:31:32 -0500
Date: 2002-01-17T14:35:40+00:00	[thread overview]
Message-ID: <u3d15nj5n.fsf@gsfc.nasa.gov> (raw)
In-Reply-To: slrna4d2oi.kn.lutz@taranis.iks-jena.de

lutz@iks-jena.de (Lutz Donnerhacke) writes:

> * Stephen Leake wrote:
> >lutz@iks-jena.de (Lutz Donnerhacke) writes:
> >> * Stephen Leake wrote:
> >> >lutz@iks-jena.de (Lutz Donnerhacke) writes:
> >> >>      A -> B     B is an extended A and C is an extended A.
> >> >>      |    |     D combines both extensions (requiring both).
> >> >>      v    v
> >> >>      C -> D
> >> >
> >> >I need more information about why C and B need to be independent types.
> >> 
> >> They do not need to be types at all. They are abstactions => interfaces.
> >> Example: A describes a sort algorithm. B describes stableness. C describes
> >> in-place-ness. D describes stable, in-place sort algorithms.
> >
> >Well, if they don't have to be types, you can easily do it in Ada. But
> >all your complaints were that it could not be done with abstract Ada
> >types.
> 
> I'm sorry for providing my solutions in the same posting asking for hints.
> How can this be done easily?

Just write packages A, B, C, D, with appropriate subprogram
declarations in the spec, and appropriate comments saying what they
do. Then in the body of D, call the subprograms in B and C as
appropriate.

The Ada code will _not_ describe the inheritance structure, except in
the comments. Perhaps that is why you don't want to do this.

-- 
-- Stephe



  reply	other threads:[~2002-01-17 14:31 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-11 10:20 Sugestion to Multiple Inheritance Lutz Donnerhacke
2002-01-11 17:21 ` Stephen Leake
2002-01-11 17:53   ` Lutz Donnerhacke
2002-01-11 19:57     ` Stephen Leake
2002-01-17  8:28       ` Lutz Donnerhacke
2002-01-17 14:31         ` Stephen Leake [this message]
2002-01-17 14:54           ` Lutz Donnerhacke
2002-01-17 20:52             ` Jim Rogers
2002-01-11 18:07 ` Mark Lundquist
2002-01-11 18:14 ` Richard Riehle
2002-01-11 20:56   ` Hyman Rosen
2002-01-12  7:35     ` Richard Riehle
2002-01-13  6:37       ` Hyman Rosen
2002-01-14 13:58         ` John English
2002-01-14 16:27           ` Ole-Hjalmar Kristensen
2002-01-12  2:09   ` Will
2002-01-11 22:04 ` Matthew Heaney
2002-01-15 15:32   ` Hyman Rosen
2002-01-15 16:03     ` Lutz Donnerhacke
2002-01-18 19:03       ` Matthew Heaney
2002-01-21 11:23         ` Lutz Donnerhacke
2002-01-21 16:43           ` Brian Rogoff
2002-01-21 17:00             ` Lutz Donnerhacke
2002-01-22 16:55               ` Brian Rogoff
2002-01-23  8:58                 ` Dmitry A. Kazakov
2002-01-25  0:09                   ` Brian Rogoff
2002-01-28 16:23                     ` Dmitry A. Kazakov
2002-01-12  0:28 ` Nick Roberts
replies disabled

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