Subject: Re: Encapsulation

From: [email-masked] (Christopher Bloom)
Date: Sun, 21 Nov 1993 10:38:37 -0800

At  3:08 PM 11/20/93 -0800, Pavel Curtis wrote:
>...
> I object to adding yet another bunch of hair on top of an already too
>hairy object model.  I think that the current permissions systems gives
>programmers enough flexibility in the encapsulation department that it's not
>worth adding more hair for it to the language.
>
>        Pavel
The current permissions systems are all about security, they do not have
anything to do with flexibility.  And the flexibility we are looking for
here is the extra level of abstraction provided by the verbs or "getters"
as they are called in some other object oriented languages.  I can tell you
that from personal experience with this feature that once you have it you
wonder how you were able to develop objects that could react properly to
the variety of interactions that are demanded of it.   Of course this
feature can be had by disallowing direct access to any attributes and 
provide operations to be used for access instead.   Pavel, is this what you
were referring to by "flexibility"?  It is also useful to provide verbs for
setting the attributes of an object.    

Philosophically speaking,  as an object I would personally want to be
congnizant of any attempts to access my internal "organs"  and react
algorythmically to the setting or getting of any of them.   And I too
believe that it could put a serious dent in the number of MOO server
crashes.   But anyway, how else am I, as an agent with a will to live life
to its fullest supposed to evolve  into an autonomous entity that can roam
the universe of MOO which is my home and  my prison,  at least until
someone provides ny house with a door  that will encode me when I step
through, carry me as a bag of bits over the wire to another MUD which will
decode the bag of bits which is me into my instance, and set me free on a
thread to reestablish a connection with my client (if I have one) and
continue on my mission (if I have one) as if I had just moved from one
place to another from within the same MUD.   And hey, although this has
nothing to do with verbs, isn't it the ultimate form of encapsulation?   
Transcending the traditional confines of RPC programming with agent
technology should be high on the list of things to do.

--->CBB
-------------------------------------------------------------------------------
 Christopher Barkley Bloom              (415)966-6290
General Magic                                       [email-masked]
CyberLife Enthusiast
----------------------------------------------------------------------------
--

---

From: Pavel Curtis <[email-masked]>
Date: Mon, 22 Nov 1993 09:50:20 -0800

> Of course this feature can be had by disallowing direct access to any
> attributes and provide operations to be used for access instead.  Pavel, is
> this what you were referring to by "flexibility"?

Yes.

> crashes.

Excuse me?  Can you explain this belief?  Essentially zero of the MOO server
crashes in recent memory were due to any feature of the code in the database.

	Pavel