comp.lang.ada
 help / color / mirror / Atom feed
From: "James S. Rogers" <JimMaureenRogers@worldnet.att.net>
Subject: Re: Is Ada an OO Language? (was => Re: polymophism)
Date: 1996/11/25
Date: 1996-11-25T00:00:00+00:00	[thread overview]
Message-ID: <329A6B9B.2C3@worldnet.att.net> (raw)
In-Reply-To: Pine.GSO.3.95.961125130229.25064B-100000@nunic.nu.edu


Richard Riehle wrote:
> 
>   This is not to suggest returning to the old days before we thought
>   about software in terms of objects.  It simply is a question about
>   the potential limitations inherent in our commonly accepted view
>   of software objects. Perhaps the notion of object is too small an
>   idea.
> 

If objects are to model real world entities then there must be a real
subset of all objects which are independent units capable of acting
asynchronously with their environment and synchronously with each
other.  This means that many objects are best implemented as tasks.  

This leads to the further realization that some objects represent
active entities while others represent resources.  The resources
can be modeled in Ada as protected types.  The active objects can
be modeled as tasks.  The active objects interact with each other
either directly, in synchronous activities (rendevous) or through
asynchronous competition for resources (protected types).

The limitation of this approach is that it is not always optimal
for performance.  This accurately models how real entities behave.
They also exhibit a similar sub-optimal performance.  We often find
ourselves trying to develop near perfect models of very imperfect
reality.  Perhaps we can more easily achieve accurate models if
we intentionally accept and exploit the sub-optimal nature of reality.

This view of objects extends the older view of objects as mere
associations of state and function which communicate via messages.
Independently executing objects communicate indirectly through the
contention for resources.  These objects have no need of knowledge
of each other.  They only need to know about the resource and its
current availability.  Nonetheless, these objects do communicate
with each other.  They influence each others behavior through
competition for limited resources.

When these objects interact directly they form communities.
Object communities can only occur among objects which have a direct
knowledge of each other.  Objects within a community can also 
compete for resources, or even share resources.  Communities can
only compete for resources or communicate through commonly accessed
resources.  Once communities gain direct knowledge of each
other they cease to be independent communities.  Instead they form
a larger combined community.

From this point of view I would say that Ada and Java are more
object oriented than Eiffel or smalltalk. Of course, this definition
of an OO language is no more useful than the one which started this 
thread.


Jim Rogers
-------------------

Team Ada




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

Thread overview: 23+ 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 Don Harrison
1996-11-25  0:00           ` polymophism Joachim Durchholz
1996-11-26  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 [this message]
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
replies disabled

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