From: nospam@thanks.com.au (Don Harrison)
Subject: Re: Can't export object of private type
Date: 1999/03/01
Date: 1999-03-01T00:00:00+00:00 [thread overview]
Message-ID: <F7xvzA.Lqn@syd.csa.com.au> (raw)
In-Reply-To: 7be1ou$mjg$2@plug.news.pipex.net
Nick Roberts wrote:
:I think, possibly, you're missing the point, Don!
Yes, you're right. Sorry about that.
What was missing was the ability to derive a class hierachy of singletons
and dispatch on the exported objects. This is what I meant by:
> 2) Are polymorphic
Sorry if that wasn't clear enough initially.
:Planet_Id is only an
:identifier of a planet, not the planet itself. There is only one instance
:of each planet -- kept in terms of variables within (the body of) each
:planet package -- and the corresponding Planet_Id simply gives access to the
:planet. It's just like having a single object with potentially many access
:values pointing to it; I'm just using integers (type Planet_Id) instead of
:access values.
Got you.
:Again, you must not confuse design with implementation: I'm using packages
:here instead of types, and integers instead of access values. But these are
:mere implementational details, and nothing to do with the design. The
:design is: single objects (the planet packages); polymorphic access to them
:(via planet ids and the package Dynamic_Planet). The 'objects' in our
:design do not have to be objects in implementation (we use packages
:instead); the 'access' values in our design do not have to be access values
:in our implementation (we use integers instead).
Sure. What I'm trying to acheive is a set of implementation techniques for
OO design that:
a) Are consistent at least from the perspective of client code.
For example, everything that is an object (including singletons)
*looks like* an object (and not a module).
b) Map as directly as possible from the design.
c) Are idiomatic Ada.
:Hope this clarifies things.
It does.
--
Don (Harrison). donh at syd.csa.com.au
next prev parent reply other threads:[~1999-03-01 0:00 UTC|newest]
Thread overview: 128+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <F7JoCB.JxB@syd.csa.com.au>
1999-02-24 0:00 ` Can't export object of private type Don Harrison
1999-02-24 0:00 ` Tom Moran
1999-02-24 0:00 ` Samuel Mize
1999-02-24 0:00 ` Tucker Taft
1999-02-25 0:00 ` Don Harrison
1999-02-25 0:00 ` fraser
1999-02-26 0:00 ` Don Harrison
[not found] ` <7b6nqe$75m$1@remarq.com>
1999-02-26 0:00 ` fraser
1999-02-27 0:00 ` Nick Roberts
1999-02-26 0:00 ` fraser
1999-03-01 0:00 ` Don Harrison
1999-03-01 0:00 ` Matthew Heaney
1999-02-26 0:00 ` Samuel Mize
1999-03-01 0:00 ` Don Harrison
1999-03-01 0:00 ` Matthew Heaney
1999-03-02 0:00 ` fraser
1999-03-03 0:00 ` Don Harrison
1999-02-28 0:00 ` Matthew Heaney
1999-02-28 0:00 ` Matthew Heaney
1999-02-25 0:00 ` Samuel Mize
1999-02-26 0:00 ` Don Harrison
1999-02-27 0:00 ` Nick Roberts
1999-03-01 0:00 ` Don Harrison
1999-03-02 0:00 ` Matthew Heaney
1999-03-01 0:00 ` Don Harrison
1999-03-01 0:00 ` Matthew Heaney
1999-03-01 0:00 ` Nick Roberts
1999-03-01 0:00 ` Nick Roberts
1999-03-01 0:00 ` Don Harrison [this message]
1999-03-02 0:00 ` Matthew Heaney
1999-03-03 0:00 ` Don Harrison
1999-03-03 0:00 ` Samuel Mize
1999-03-04 0:00 ` Don Harrison
1999-03-07 0:00 ` Ehud Lamm
1999-03-03 0:00 ` Robert A Duff
1999-03-04 0:00 ` Don Harrison
1999-03-04 0:00 ` Robert A Duff
1999-02-28 0:00 ` Matthew Heaney
1999-03-01 0:00 ` Nick Roberts
1999-03-01 0:00 ` Matthew Heaney
1999-03-01 0:00 ` Matthew Heaney
1999-03-02 0:00 ` Nick Roberts
1999-03-01 0:00 ` Samuel Mize
1999-02-25 0:00 ` robert_dewar
1999-02-26 0:00 ` Don Harrison
1999-02-26 0:00 ` robert_dewar
1999-02-26 0:00 ` dennison
1999-02-26 0:00 ` bourguet
1999-02-26 0:00 ` Samuel T. Harris
1999-02-27 0:00 ` Simon Wright
1999-02-27 0:00 ` Jean-Pierre Rosen
1999-02-28 0:00 ` dewar
1999-03-01 0:00 ` bourguet
1999-03-01 0:00 ` Don Harrison
1999-03-01 0:00 ` robert_dewar
1999-03-03 0:00 ` Don Harrison
1999-03-03 0:00 ` robert_dewar
1999-03-01 0:00 ` Stephen Leake
1999-02-27 0:00 ` Brian Rogoff
1999-03-01 0:00 ` robert_dewar
1999-02-28 0:00 ` Matthew Heaney
1999-03-01 0:00 ` Tom Moran
1999-03-02 0:00 ` Matthew Heaney
1999-03-02 0:00 ` Tom Moran
1999-03-02 0:00 ` Matthew Heaney
1999-03-02 0:00 ` Tom Moran
1999-03-02 0:00 ` Matthew Heaney
1999-03-02 0:00 ` nabbasi
1999-03-02 0:00 ` Matthew Heaney
1999-03-03 0:00 ` Don Harrison
1999-03-03 0:00 ` Single Extension; Polymorphic Arrays Nick Roberts
1999-03-03 0:00 ` Nick Roberts
1999-03-08 0:00 ` Matthew Heaney
1999-03-08 0:00 ` Nick Roberts
1999-03-08 0:00 ` Tucker Taft
[not found] ` <m3ogm40wav.fsf@mheaney.ni.net>
1999-03-08 0:00 ` Nick Roberts
1999-03-08 0:00 ` Tucker Taft
1999-03-08 0:00 ` dennison
1999-03-09 0:00 ` Nick Roberts
1999-03-03 0:00 ` Can't export object of private type Don Harrison
1999-03-03 0:00 ` Don Harrison
1999-03-03 0:00 ` Nick Roberts
1999-03-04 0:00 ` Don Harrison
1999-03-04 0:00 ` fraser
1999-03-09 0:00 ` Don Harrison
1999-03-04 0:00 ` Nick Roberts
1999-03-04 0:00 ` robert_dewar
1999-03-05 0:00 ` Nick Roberts
1999-03-05 0:00 ` Robert A Duff
1999-03-05 0:00 ` Abstract Subprograms of Untagged Types Nick Roberts
1999-03-05 0:00 ` robert_dewar
1999-03-05 0:00 ` Tucker Taft
1999-03-05 0:00 ` Nick Roberts
1999-03-06 0:00 ` robert_dewar
1999-03-04 0:00 ` Can't export object of private type Nick Roberts
1999-03-08 0:00 ` Matthew Heaney
1999-03-09 0:00 ` Don Harrison
1999-03-09 0:00 ` Matthew Heaney
1999-03-09 0:00 ` Nick Roberts
1999-03-10 0:00 ` Don Harrison
1999-03-10 0:00 ` Matthew Heaney
1999-03-08 0:00 ` Matthew Heaney
1999-03-08 0:00 ` Nick Roberts
1999-03-08 0:00 ` Matthew Heaney
1999-03-10 0:00 ` Don Harrison
1999-03-10 0:00 ` Matthew Heaney
1999-03-10 0:00 ` dennison
1999-03-10 0:00 ` robert_dewar
1999-03-10 0:00 ` dennison
1999-03-10 0:00 ` robert_dewar
1999-03-10 0:00 ` dennison
1999-03-11 0:00 ` robert_dewar
1999-03-11 0:00 ` Don Harrison
1999-03-12 0:00 ` robert_dewar
1999-03-11 0:00 ` bill
1999-03-11 0:00 ` Scott Ingram
1999-03-11 0:00 ` Larry Kilgallen
1999-03-11 0:00 ` dennison
1999-03-12 0:00 ` dewar
1999-03-11 0:00 ` dennison
1999-03-11 0:00 ` Don Harrison
1999-03-10 0:00 ` Robert A Duff
1999-03-10 0:00 ` dennison
1999-03-11 0:00 ` dennison
1999-03-10 0:00 ` robert_dewar
1999-03-03 0:00 ` Don Harrison
1999-02-28 0:00 ` Matthew Heaney
1999-02-28 0:00 ` Matthew Heaney
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox