[MUD-Dev] Re: atomic functions

Shawn Halpenny malachai at iname.com
Thu May 14 16:00:45 CEST 1998


On Wed, May 13, 1998 at 05:42:00PM +0000, Jon A. Lambert wrote:
> On  7 May 98, Shawn Halpenny wrote:
> > On Wed, May 06, 1998 at 09:34:27PM +0200, Felix A. Croes wrote:
> > > 
> > > I contest this :)  I claim that it is very useful indeed, and not
> > > at all illusionary.  I frequently find that actions which have to
> > > be atomic -- for instance, moving a hungry dragon into a room,
> > > which changes both the environment of the dragon and the inventory
> > > of the room -- are part of a larger event, the actions of which
> > > I want to be executed precisely in that other without other
> > > events intervening.
> > 
> > Moving the hungry dragon into the room does not have to be an atomic
> > action.  Removing the dragon from its current room is one event, putting it
> > into the next room is another.  This is an attempt to minimize the number
> > of C&C collisions if you have a lot of these things going on (get rid of the
> > container-room ideology and this is even less a factor--something I'll
> > probably end up going with).  The movement events will be executed in the
> > correct order, since the dragon removal event posts the dragon insertion
> > event only if it successfully C&C's.
> > 
> 
> But what if object Bubba "closes the door"event succeeds  after the 
> "dragon removed from the room" event succeeds  and before "dragon 
> added to Bubba's room" begins.  Does the dragon go through the closed 
> door? 

Unfortunately in this mail, the dragon does go through the door.  Had I payed
closer attention to what I was saying when replying, it wouldn't.

How ghastly of me to write that (and worse, I have it all written up
correctly in my D-doc...shame on me).

Not everything can be broken up like that, the general case of
a one-step process concurrent with a two-step process, both with a
common object like the door being a fine example.  I confuzzed the thinking
about loops over multiple objects with the 1:2 step process case...

(The curious can harken back to
http://www.kanga.nu:80/~petidomo/lists/mud-dev/1997Q3/msg00468.html )
for a little bit more about why this can be particularly dastardly.

--
Shawn Halpenny

I know that you believe you understand what you think I said, but,
I am not sure you realize that what you heard is not what I meant.  

--
MUD-Dev: Advancing an unrealised future.



More information about the mud-dev-archive mailing list