[MUD-Dev] C&C and Event Rescheduling
Nathan Yospe
yospe at hawaii.edu
Thu Aug 14 19:54:36 CEST 1997
On Thu, 14 Aug 1997 clawrenc at cup.hp.com wrote:
:In <9708120437.8b94 at ami-cg.GraySage.Edmonton.AB.CA>, on 08/12/97
: at 08:14 AM, cg at ami-cg.GraySage.Edmonton.AB.CA (Chris Gray) said:
:
:>[Chris L:]
:
:>: Please enters the following very rapidly:
:>:
:>: N, S, E, W.
:
:>It seems to me that, even if they are all on the same input line,
:>they are separate commands from the user.
:
:As a general rule, yes. There are exceptions. Consider the case:
:
: > dig panama canal
: You begin digging.
: ...many hours later...
: You are still digging.
: You are attacked by the Orcs!
: > kill orcs
: Sorry, you'll have to wait till you're done digging.
: > oops
:
:A silly implementation to be sure, but it illustrates. Another:
:
: > n,n,n,n,n,n,n,n,n,e,e,e,e,e,e
: You go north
: ...
: There an incredibly valuable diamond here.
: You go north.
: You go east.
: You go east.
: ...
: > Go back! Go back!
: ...
: > l
: There is nothing here.
Oops! Sounds like you need to rethink your sequential design!
:The summary we arrived at last time was that by default user commands
:should be executed strictly sequentially. This was to be done via
:sequence number dependancies. However, we also saw a use in commands
:which were to be explicity executed in parrallel with other user
:commands. One of the primary uses for such was an interrupt command
:which more or less said, "kill the entire command queue NOW!".
That, and prioritized interuption...
:(Hey Jon! This is another thread to add your list of things to dig up
:-- the one about command sequencing, priority commands, command
:interrupts, and job control for asynchronous command execution. It
:was mainly between CG and myself.).
And I may go and fish out a bunch of the stuff I wrote on the subject in
the rgm.diku "Event-based vs Loop-based" thread several months back...
:>I'd say that an input
:>command from a user cannot even be ready for execution until all
:>previous commands from that user have C&C'd.
:In the general case yes. An explicit exception should be made for
:interrupt commands.
I don't like it even in general. Of course, my model is different, and not
very many commands are executed as a single event, which is a major part
of the rational behind the "event chain" model (I once provided a martial
arts example, in which a jump kick is transformed into a somersault and
turn when the target dives out of the way...)
:>Haven't we talked about just this
:>before?
:Yup. However our new members didn't catch that thread.
We've got a lot of threads could use a dustin off, I reckon.
<snip a bunch of database style mud specific stuff>
"You? We can't take you," said the Dean, glaring at the Librarian.
"You don't know a thing about guerilla warfare." - Reaper Man,
Nathan F. Yospe Registered Looney by Terry Pratchett
yospe at hawaii.edu http://www2.hawaii.edu/~yospe Meow
More information about the mud-dev-archive
mailing list