<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD-Dev] DBs and Events -->
<!--X-From-R13: "Xba O. Znzoreg" <wyflfvapNvk.argpbz.pbz> -->
<!--X-Date: Thu, 12 Feb 1998 17:45:09 +0000 -->
<!--X-Message-Id: 199802121745.LAA02889@dfw-ix4.ix.netcom.com -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: Pine.LNX.3.91.980210211015.65K-100000@uni-corn.demon.co.uk -->
<!--X-Reference: Pine.GSO.3.95q.980211083504.13903A-100000@uhunix1 -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] DBs and Events</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:jlsysinc#ix,netcom.com">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">
<font size="+4" color="#804040">
<strong><em>MUD-Dev<br>mailing list archive</em></strong>
</font>
<br>
[ <a href="../">Other Periods</a>
| <a href="../../">Other mailing lists</a>
| <a href="/search.php3">Search</a>
]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->
Date:
[ <a href="msg00435.html">Previous</a>
| <a href="msg00437.html">Next</a>
]
Thread:
[ <a href="msg00402.html">Previous</a>
| <a href="msg00472.html">Next</a>
]
Index:
[ <A HREF="author.html#00436">Author</A>
| <A HREF="#00436">Date</A>
| <A HREF="thread.html#00436">Thread</A>
]
<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] DBs and Events</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#null,net">mud-dev#null,net</A></LI>
<LI><em>Subject</em>: Re: [MUD-Dev] DBs and Events</LI>
<LI><em>From</em>: "Jon A. Lambert" <<A HREF="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</A>></LI>
<LI><em>Date</em>: Thu, 12 Feb 1998 12:47:31 -4</LI>
<LI><em>Comments</em>: Authenticated sender is <jlsysinc#popd,ix.netcom.com></LI>
<LI><em>Reply-to</em>: <A HREF="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
On 11 Feb 98 at 11:24, Nathan Yospe wrote:
> On Tue, 10 Feb 1998, Greg Munt wrote:
> :On Tue, 10 Feb 1998, Nathan Yospe wrote:
>
> :> On Tue, 10 Feb 1998, Greg Munt wrote:
>
> :> :Also, any references to caches?
>
> :> Again, can't help you. I've done caches, but not for my mud... and there
> :> is such a broad spectrum of things that qualify as cache. Do you want to
> :> know more about cached in-memory storage for a disk-based DB?
>
> :Yes.
See Cold, Cool and Uber(or is that Unter?).
> :> Or bottleneck spot caching?
>
> :What's that?
>
> An element of assembly coding and RISC compiler design. It might also be
> significant for VM construction. It has to do with the repeated register
> loading of the same data over and over. Essentially means finding where,
> when, and how information can be loaded onto the stack/into registers to
> minimize the number of loads (This opposed to operational instructions.)
>
Nod. Being terminology challenged in the areas of compiler theory and
hardware, I lump this in the category of "code optimization" in my VM.
It certainly has significance in my VM.
While Nathan's point is specific it does touch on a good general principle,
even if you are not writing assembly or VMs. Pay some attention to your
architecture.
For instance, in an RGMA flame-fest not long ago, one poster bemoaned the
fact that the old MS-C compiler by default did register alignment on data
as opposed to the *nix GCC compiler. I was curious about this and found
some rather enlightening things about 8086 architecture. By turning this
option on, I got around a 25% boost in speed. Of course nothing comes
for free and there are few downsides to this. Executables are quite a bit
larger and it makes all that clever (or not so clever) C pointer arithmetic
unpredictable. I would recommend these options if you are targetting this
architecture and the downsides are irrelevant to you.
> :> :Any references to Event Management? Is there any alternative to using a
[snip]
> :I'm not sure I understand this too well. Are you suggesting this?
>
> :class Event
> : {
> : private:
> : DataType1 *a;
> : DataType2 *b;
> : ...
> :
> : public:
> : ...
> : process();
> : };
>
I guess I'll unzip and show you mine.
class Event {
Objid owner; // controlling object
Object *callee; // object containing method
Object *actor; // calling object
Message *args; // arguments to call
short priority // Event priority
Method *m; // method to execute
TTime birth_time // timestamp on queue
TTime exec_time // scheduled execution time
};
class Task {
Event *event // executing event
long msgid; // unique task ID
long wait; // wait time
long ticks; // execution time
int retry // interval in msecs to retry event
int sp; // stack pointer
int pc; // program counter
Var *stack // stack
int st_size // current stack size
short priority // thread priority
PThread exec_hndl // Handle to execution thread
void *localTD // Handle to protected thread data
public:
(... lots of functions ...)
};
I now feel some embarassed at exposing myself; yet strangely unburdened. ;)
> class Event{
> SortedList<ObjectReference<BaseObject>, PrioriList<AttributeType,
> AttributeValue> > objectList;
> TimeValue timeCheck; // for purpose of sanity checks
> public:
> process(); // set values... for each object in objectList, call
> // BaseObject::update();
> };
>
> :I still can't see how the event isn't a function. The tasks that the
> :event does have to be stored in a function?
>
Well try to think of all items within an object as just data. Assign no
importance as to whether something is a function or not. It is merely a
pointer to more data. Pay no attention to the little man behind the
curtain. It's not easy for me either, since I mentally tend to
differentiate functions from procedures.
> Well, yes and no. I operate entirely on the principal of creation, value
> modification, full instantiation, partial destantiation, and deletion. I
> don't tolerate the sort of procedural functions that most languages use.
Grin. Nathan has been fully abstracted.
[snip]
>
> :I'll use this opportunity to keep you updated on my work activities: I
> :finally got a job, C++/Unix, using such tools as Rational Rose, etc. I'll
> :be maintaining and developing planning and scheduling software for the
> :steel industry. Will post a FAQ update soon.
>
> Congratulations. Rational Rose, eh? I have misery in my company. I mean,
> company in my misery. No the first time was right. We use Rose too. Dang
> piece of ill concieved code. Powerful, though. But... how can a tool for
> object oriented design be so... inconsistant? It seems to have spaghetti
> for innards, and the user interface changes from one tool to the next so
> radically that the keys for _copy_ and _paste_ are never the same, and I
> don't even want to go into the deletion and selection procedures. Bleah!
>
Hmm. Another Rational Rose user. I like it, but have been burned.
Hint: Keep good backups of all iterations of clean source as well as
the .mdl's that generated them.
--
--/*\ Jon A. Lambert - TychoMUD Internet:jlsysinc#ix,netcom.com /*\--
--/*\ Mud Server Developer's Page <<A HREF="http://www.netcom.com/~jlsysinc">http://www.netcom.com/~jlsysinc</A>> /*\--
--/*\ "Everything that deceives may be said to enchant" - Plato /*\--
</PRE>
<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="00472" HREF="msg00472.html">Re: [MUD-Dev] DBs and Events</A></strong>
<ul compact><li><em>From:</em> coder#ibm,net</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00399" HREF="msg00399.html">Re: [MUD-Dev] DBs and Events</A></STRONG>
<UL><LI><EM>From:</EM> Greg Munt <greg#uni-corn,demon.co.uk></LI></UL></LI>
<LI><STRONG><A NAME="00402" HREF="msg00402.html">Re: [MUD-Dev] DBs and Events</A></STRONG>
<UL><LI><EM>From:</EM> Nathan Yospe <yospe#hawaii,edu></LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00435.html">user-centered design (was Re: [MUD-Dev] Clients)</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00437.html">Re: [MUD-Dev] DBs and Events</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00402.html">Re: [MUD-Dev] DBs and Events</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00472.html">Re: [MUD-Dev] DBs and Events</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00436"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00436"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>
<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>Re: [MUD-Dev] OT: Linux g++</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<LI><strong><A NAME="00444" HREF="msg00444.html">Re: [MUD-Dev] OT: Linux g++</A></strong>,
Ben Greear <a href="mailto:greear#cyberhighway,net">greear#cyberhighway,net</a>, Fri 13 Feb 1998, 00:30 GMT
<UL>
<LI><strong><A NAME="00487" HREF="msg00487.html">Re: [MUD-Dev] OT: Linux g++</A></strong>,
coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Mon 16 Feb 1998, 11:29 GMT
<UL>
<LI><strong><A NAME="00526" HREF="msg00526.html">Re: [MUD-Dev] OT: Linux g++</A></strong>,
Shawn Halpenny <a href="mailto:malachai#iname,com">malachai#iname,com</a>, Wed 18 Feb 1998, 17:02 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</ul>
<LI><strong><A NAME="00402" HREF="msg00402.html">Re: [MUD-Dev] DBs and Events</A></strong>,
Nathan Yospe <a href="mailto:yospe#hawaii,edu">yospe#hawaii,edu</a>, Wed 11 Feb 1998, 19:10 GMT
<UL>
<LI><strong><A NAME="00436" HREF="msg00436.html">Re: [MUD-Dev] DBs and Events</A></strong>,
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Thu 12 Feb 1998, 17:45 GMT
<UL>
<LI><strong><A NAME="00472" HREF="msg00472.html">Re: [MUD-Dev] DBs and Events</A></strong>,
coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Mon 16 Feb 1998, 02:47 GMT
<UL>
<LI><strong><A NAME="00500" HREF="msg00500.html">Re: [MUD-Dev] Version Control (was: DBs and Events)</A></strong>,
Vadim Tkachenko <a href="mailto:vadimt#4cs,com">vadimt#4cs,com</a>, Mon 16 Feb 1998, 23:30 GMT
<UL>
<LI><strong><A NAME="00524" HREF="msg00524.html">Re: [MUD-Dev] Version Control (was: DBs and Events)</A></strong>,
coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Wed 18 Feb 1998, 10:34 GMT
<UL>
<LI><strong><A NAME="00536" HREF="msg00536.html">Version Control (was: DBs and Events)</A></strong>,
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Fri 20 Feb 1998, 09:55 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</ul>
</ul>
</LI>
</UL></BLOCKQUOTE>
</ul>
<hr>
<center>
[ <a href="../">Other Periods</a>
| <a href="../../">Other mailing lists</a>
| <a href="/search.php3">Search</a>
]
</center>
<hr>
</body>
</html>