1998Q2/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: atomic functions -->
<!--X-From-R13: X Q Znjerapr <pynjNhaqre.rate.ftv.pbz> -->
<!--X-Date: Wed, 13 May 1998 11:23:25 &#45;0700 -->
<!--X-Message-Id: 199805131823.LAA09809#under,engr.sgi.com -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 19980507100739.B9025#sun104,humb.nt.com -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Re: atomic functions</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:claw#under,engr.sgi.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>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00541.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00543.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00457.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00560.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00542">Author</A>
&nbsp;|&nbsp;<A HREF="#00542">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00542">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Re: atomic functions</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: [MUD-Dev] Re: atomic functions </LI>
<LI><em>From</em>: J C Lawrence &lt;<A HREF="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</A>&gt;</LI>
<LI><em>Date</em>: Wed, 13 May 1998 11:23:09 -0700</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Sender</em>: "Petidomo List Agent -- Kanga.Nu version" &lt;<A HREF="mailto:petidomo#kanga,nu">petidomo#kanga,nu</A>&gt;</LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
On Thu, 7 May 1998 10:07:39 -0400 
Shawn Halpenny&lt;malachai#iname,com&gt; wrote:

&gt; On Tue, May 05, 1998 at 06:46:58PM -0700, Adam Wiggins wrote:

&gt;&gt; Do an archive search for C&amp;C.  

Ouch.  You are in a maze of twisted piles of messages.  There are many
search hits here.

&gt;&gt; You'll pull up a ton of stuff, probably most of it from JCL.  Then
&gt;&gt; if you have questions/things to add you can do a followup.  We love
&gt;&gt; resurrecting ancient threads here!

&gt; Aye (I had resurrected it that time).  The thread petered out
&gt; eventually after a few of us had tossed about methods for object
&gt; comparison at C&amp;C time, event sequencing, and breaking objects into
&gt; their component attributes for storage.  Above, I'd mentioned JCL
&gt; explicitly since back then he had dropped that he might try such an
&gt; object breakdown and see how it performed.  I suppose we'll have to
&gt; forgive him his day job and wait until he catches up to this
&gt; message.

Originally I based my model on the classical "DB for backing store".
Internal object types at the instance level devolved to flat DB
records with all relationships being virtual and stored within the
record data, not the DB.  This has been a standard approach ever since
UnterMUD, and has been closely followed by the Tiny-* clan, MOO, Cold
etc.

Its not a bad model, but it has limitations.  I'm now using almost a
pure persistant store model.  Persistant store?  Objects are now first
class types that define their own relationships and map directly to
their storage formats.  Little objects, big objects, strings, players,
aggregate objects, nested objects, component objects, transient
objects, etc they're all grist for the mill, and are all persistant.

A side implication of this is that a lot of my DB module has
dissappeared.  The DB module really doesn't habdle persistance and
backing store writes anymore.  All it handles is localised cacheing of 
object contexts for running events (pre-commit).  *Everything* else,
the entire backing store concept, is done by the underlieing and very
well hidden and transparent persistant store.  

Essentially I've created a persistant language, which is a rather odd
thing really.

Gone is the single-file-is-the-world approach.  The DB now spans a
little over a dozen files, each optmising for different object siszes
and base types.  

Good reading on the area:

  Texas Persistant Store
  Arjuna
  Persist++
  ObjectStore

See the FreeDB list for pointers to the above (ObjectStore is commercial).

-- 
J C Lawrence                               Internet: claw#null,net
(Contractor)                               Internet: coder#ibm,net
---------(*)                     Internet: claw#under,engr.sgi.com
...Honourary Member of Clan McFud -- Teamer's Avenging Monolith...

-- 
MUD-Dev: Advancing an unrealised future.

</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="00560" HREF="msg00560.html">[MUD-Dev] Re: atomic functions</A></strong>
<ul compact><li><em>From:</em> "Jon A. Lambert" &lt;jlsysinc#ix,netcom.com&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00457" HREF="msg00457.html">[MUD-Dev] Re: atomic functions</A></STRONG>
<UL><LI><EM>From:</EM> Shawn Halpenny &lt;malachai#iname,com&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00541.html">[MUD-Dev] Re: atomic functions</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00543.html">[MUD-Dev] Re: Character maintinence - expenditure of resources</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00457.html">[MUD-Dev] Re: atomic functions</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00560.html">[MUD-Dev] Re: atomic functions</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00542"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00542"><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>[MUD-Dev] Re: atomic functions</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<LI><strong><A NAME="00399" HREF="msg00399.html">[MUD-Dev] Re: atomic functions</A></strong>, 
Shawn Halpenny <a href="mailto:malachai#iname,com">malachai#iname,com</a>, Tue 05 May 1998, 14:32 GMT
<UL>
<LI><strong><A NAME="00410" HREF="msg00410.html">[MUD-Dev] Re: atomic functions</A></strong>, 
Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Tue 05 May 1998, 19:18 GMT
<UL>
<LI><strong><A NAME="00411" HREF="msg00411.html">[MUD-Dev] Re: atomic functions</A></strong>, 
Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Tue 05 May 1998, 19:33 GMT
</LI>
<LI><strong><A NAME="00457" HREF="msg00457.html">[MUD-Dev] Re: atomic functions</A></strong>, 
Shawn Halpenny <a href="mailto:malachai#iname,com">malachai#iname,com</a>, Thu 07 May 1998, 14:09 GMT
<UL>
<LI><strong><A NAME="00542" HREF="msg00542.html">[MUD-Dev] Re: atomic functions</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Wed 13 May 1998, 18:23 GMT
<UL>
<LI><strong><A NAME="00560" HREF="msg00560.html">[MUD-Dev] Re: atomic functions</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Wed 13 May 1998, 22:14 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
<LI><strong><A NAME="00339" HREF="msg00339.html">[MUD-Dev] Re: atomic functions</A></strong>, 
Felix A. Croes <a href="mailto:felix#xs1,simplex.nl">felix#xs1,simplex.nl</a>, Sun 03 May 1998, 17:45 GMT
<UL>
<LI><strong><A NAME="00345" HREF="msg00345.html">[MUD-Dev] Re: atomic functions</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Sun 03 May 1998, 16:50 GMT
<UL>
<LI><strong><A NAME="00446" HREF="msg00446.html">[MUD-Dev] Re: atomic functions</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Wed 06 May 1998, 23:03 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>