1998Q4/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: Bruce Sterling on Virtual Community goals -->
<!--X-From-R13: Xba Zrbaneq <wyrbaneqNqvipbz.fyvzl.pbz> -->
<!--X-Date: Mon, 19 Oct 1998 21:27:12 &#45;0700 -->
<!--X-Message-Id: 19981019212302.A7642#divcom,slimy.com -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 199810192337.RAA18441@ami&#45;cg.GraySage.Edmonton.AB.CA -->
<!--X-Reference: 19981019182201.A6431#divcom,slimy.com -->
<!--X-Reference: 199810200221.VAA03218@dfw&#45;ix6.ix.netcom.com -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Re: Bruce Sterling on Virtual Community goals</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:jleonard#divcom,slimy.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="msg00260.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00262.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00257.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00270.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00261">Author</A>
&nbsp;|&nbsp;<A HREF="#00261">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00261">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</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: Bruce Sterling on Virtual Community goals</LI>
<LI><em>From</em>: Jon Leonard &lt;<A HREF="mailto:jleonard#divcom,slimy.com">jleonard#divcom,slimy.com</A>&gt;</LI>
<LI><em>Date</em>: Mon, 19 Oct 1998 21:23:02 -0700</LI>
<LI><em>Cc</em>: Jon Leonard &lt;<A HREF="mailto:jleonard#divcom,slimy.com">jleonard#divcom,slimy.com</A>&gt;</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</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 Mon, Oct 19, 1998 at 10:22:12PM +0000, Jon A. Lambert wrote:
&gt; On 19 Oct 98, Jon Leonard wrote:
&gt; &gt; On Mon, Oct 19, 1998 at 05:37:55PM -0600, Chris Gray wrote:

[in-MUD languages for a flexible MUD server]

&gt; &gt; I don't think a single monolithic server would be flexible enough for
&gt; &gt; what most of us are interested in.   I'd build a mix and match collection
&gt; &gt; of components for things like internal language.  Some successful MUDs
&gt; &gt; don't have internal languages at all, and that's a model we should support
&gt; &gt; too.
&gt; 
&gt; You're right.  I think a better way to approach an extensible 
&gt; (generic?) internal mud language is to design the VM first.  More 
&gt; particularly a byte-code assembler.  From there, anyone could create 
&gt; a compiler for their favorite language du jour.   If you prefer 
&gt; strong typing over weak typing, the compiler would simply ignore or 
&gt; not generate opcodes that deal with type promotions/conversions. 

I don't think building a fully featured VM is feasable right away,
especially if by fully featured we mean every buzzword we can think of.
Designing a secure, efficient, garbage collected, threaded, distributed,
capability-based, properly tail recursive (etc.) virtual machine is
(at least) a serious research project.  It also wouldn't be nearly as
easy to understand as simple interpreter that fit the same interface.

That said, I think some sort of byte-code machine makes a lot of sense
as an option.  Which buzzwords do we want to start with?

&gt; This sounds like an interesting project.  Something where you could 
&gt; limit the scope quite nicely to a drop in VM component with clearly 
&gt; delineated boundaries.   

It's not yet clear what the boundaries should be, either.

I'm thinking that other modules should present entities (like sockets)
and functions that operate on them (like write string to).  From the
object-oriented viewpoint, the operations are methods on these entites.

It looks like any such system needs to have functions (and callbacks),
and these are functions of more than one argument.  Is there anything
else that needs to go in the interface layer?  Unique IDs?

Left to my own devices, I'd implement these calls as C functions.
Each module would have a structure listing the names of the functions
it exported and function pointers.  The structure might include stuff
about calling conventions, a documentation string, etc.  In my current
server, all functions take and return linked lists of arguments/results,
but that's not necessarily the best choice.

We might need to have (compile time option?) more than one calling
convention, and certain modules might use backdoor entry points
into other modules for efficiency.

&gt; I'm game.  :)  

Cool.

Jon Leonard


</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="00285" HREF="msg00285.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>
<ul compact><li><em>From:</em> "Jon A. Lambert" &lt;jlsysinc#ix,netcom.com&gt;</li></ul>
<li><strong><A NAME="00270" HREF="msg00270.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>
<ul compact><li><em>From:</em> Niklas Elmqvist &lt;d97elm#dtek,chalmers.se&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00252" HREF="msg00252.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></STRONG>
<UL><LI><EM>From:</EM> Chris Gray &lt;cg#ami-cg,GraySage.Edmonton.AB.CA&gt;</LI></UL></LI>
<LI><STRONG><A NAME="00254" HREF="msg00254.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></STRONG>
<UL><LI><EM>From:</EM> Jon Leonard &lt;jleonard#divcom,slimy.com&gt;</LI></UL></LI>
<LI><STRONG><A NAME="00257" HREF="msg00257.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></STRONG>
<UL><LI><EM>From:</EM> "Jon A. Lambert" &lt;jlsysinc#ix,netcom.com&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00260.html">[MUD-Dev] Re: Trusting the Client (Re: Laws of Online World  D esign)</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00262.html">[MUD-Dev] Re: Trusting the Client (Re: Laws of Online World</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00257.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00270.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00261"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00261"><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: Bruce Sterling on Virtual Community goals</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<LI><strong><A NAME="00259" HREF="msg00259.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Tue 20 Oct 1998, 02:49 GMT
<UL>
<LI><strong><A NAME="00268" HREF="msg00268.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
Jon Leonard <a href="mailto:jleonard#divcom,slimy.com">jleonard#divcom,slimy.com</a>, Tue 20 Oct 1998, 06:01 GMT
</LI>
</UL>
</LI>
</ul>
</ul>
<LI><strong><A NAME="00254" HREF="msg00254.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
Jon Leonard <a href="mailto:jleonard#divcom,slimy.com">jleonard#divcom,slimy.com</a>, Tue 20 Oct 1998, 01:27 GMT
<UL>
<LI><strong><A NAME="00257" HREF="msg00257.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Tue 20 Oct 1998, 02:24 GMT
<UL>
<LI><strong><A NAME="00261" HREF="msg00261.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
Jon Leonard <a href="mailto:jleonard#divcom,slimy.com">jleonard#divcom,slimy.com</a>, Tue 20 Oct 1998, 04:27 GMT
<UL>
<LI><strong><A NAME="00270" HREF="msg00270.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
Niklas Elmqvist <a href="mailto:d97elm#dtek,chalmers.se">d97elm#dtek,chalmers.se</a>, Tue 20 Oct 1998, 10:01 GMT
<UL>
<LI><strong><A NAME="00279" HREF="msg00279.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
Jon Leonard <a href="mailto:jleonard#divcom,slimy.com">jleonard#divcom,slimy.com</a>, Wed 21 Oct 1998, 01:05 GMT
<UL>
<LI><strong><A NAME="00287" HREF="msg00287.html">[MUD-Dev] Re: Bruce Sterling on Virtual Community goals</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Wed 21 Oct 1998, 04:40 GMT
</LI>
<LI><strong><A NAME="00294" HREF="msg00294.html">[MUD-Dev] PDMud (was Re: Bruce Sterling on Virtual Community goals)</A></strong>, 
Niklas Elmqvist <a href="mailto:d97elm#dtek,chalmers.se">d97elm#dtek,chalmers.se</a>, Wed 21 Oct 1998, 08:00 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</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>