comp.lang.ada
 help / color / mirror / Atom feed
From: donh@syd.csa.com.au (Don Harrison)
Subject: Re: polymophism
Date: 1996/11/26
Date: 1996-11-26T00:00:00+00:00	[thread overview]
Message-ID: <E1GJzE.Cuw@syd.csa.com.au> (raw)
In-Reply-To: 6LW66Hqk3RB@herold.franken.de


Joachim Durchholz writes:

:donh@syd.csa.com.au wrote 25.11.96:
:
:> You may be thinking of clusters (which aren't part of the language). These
:> serve only to group classes into subsystems as an administrative convenience
:> and have no semantic significance.
:
:Though clusters have been declared not to be part of the language, they  
:really are.
:After all, it is the *compiler* that declares an error if it can't find a  
:class because it has been renamed via cluster configuration.

Yes, renaming clauses in clusters *do* consitute part of the 'program'
and convey essential semantics. I stand corrected. Such renaming effectively
de-overloads class names.

:Besides, I don't feel quite at home with the class = module requirement.  

I think this is still okay so long as you define a facade class, where 
needed, to provide a common interface to a cluster of classes. This delivers 
the scalability needed for large systems.

:There are useful libraries that consist of dozens of tiny classes, some  
:containing nothing more than a few invariant or constant definitions.   
:Such classes have too fine granularity to allow easy understanding of a  
:system; you need larger units. 

Agree.

I think the Cluster concept fill that gap  
:(and quite well, too).

Agree (if used with facades). What Eiffel does *not* need (and can do 
without), IMO, is a package/namespace mechanism. Clusters are a more flexible 
solution for Eiffel because they contain only configuration information and 
are defined in separate files to classes. Consequently, clusters and classes 
can be changed independently and moving class texts is not necessary to 
include/exclude them.


Don.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Don Harrison             donh@syd.csa.com.au






  reply	other threads:[~1996-11-26  0:00 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-11-18  0:00 polymophism AGBOH CHARLES
1996-11-19  0:00 ` polymophism Darren C Davenport
1996-11-21  0:00   ` polymophism James O'Connor
1996-11-21  0:00     ` polymophism Mike Stark
1996-11-22  0:00       ` polymophism Klaus Brouwer
1996-11-23  0:00         ` polymophism James O'Connor
1996-11-25  0:00         ` polymophism Richard Riehle
1996-11-22  0:00       ` polymophism Norman H. Cohen
1996-11-22  0:00     ` polymophism Norman H. Cohen
1996-11-23  0:00       ` polymophism James O'Connor
1996-11-22  0:00         ` polymophism Matthew Heaney
1996-11-25  0:00           ` polymophism Joachim Durchholz
1996-11-26  0:00             ` Don Harrison [this message]
1996-11-25  0:00           ` polymophism Don Harrison
1996-11-25  0:00       ` Is Ada an OO Language? (was => Re: polymophism) Richard Riehle
1996-11-25  0:00         ` James S. Rogers
1996-11-23  0:00     ` polymophism John Howard
1996-11-21  0:00   ` polymophism Robert I. Eachus
1996-11-22  0:00   ` polymophism Jon S Anthony
1996-11-22  0:00     ` polymophism Robert A Duff
1996-11-23  0:00   ` polymophism Jon S Anthony
1996-11-24  0:00   ` polymophism Robert B. Love 
1996-11-27  0:00   ` Is Ada an OO Language? (was => Re: polymophism) Robert I. Eachus
  -- strict thread matches above, loose matches on Subject: below --
1996-11-26  0:00 polymophism Peter Hermann
1996-11-26  0:00 ` polymophism Peter Hicks
1996-11-26  0:00   ` polymophism Peter Hermann
1996-11-26  0:00 ` polymophism John Howard
1996-11-29  0:00 ` polymophism Richard Riehle
replies disabled

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