<!-- MHonArc v2.4.4 --> <!--X-Subject: [MUD-Dev] Virtual machine design --> <!--X-From-R13: Eunar Yvat <gunaqbeNqbahg.quvf.bet> --> <!--X-Date: Thu, 15 Apr 1999 23:56:33 -0700 --> <!--X-Message-Id: 19990416195942.A1116#donut,dhis.org --> <!--X-Content-Type: text/plain --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, [MUD-Dev] Virtual machine design</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:thandor#donut,dhis.org"> </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="msg00053.html">Previous</a> | <a href="msg00055.html">Next</a> ] Thread: [ <a href="msg00269.html">Previous</a> | <a href="msg00057.html">Next</a> ] Index: [ <A HREF="author.html#00054">Author</A> | <A HREF="#00054">Date</A> | <A HREF="thread.html#00054">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>[MUD-Dev] Virtual machine design</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] Virtual machine design</LI> <LI><em>From</em>: Shane King <<A HREF="mailto:thandor#donut,dhis.org">thandor#donut,dhis.org</A>></LI> <LI><em>Date</em>: Fri, 16 Apr 1999 19:59:43 +1000</LI> <LI><em>Mail-Followup-To</em>: mud-dev#kanga,nu</LI> <LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> <LI><em>Sender</em>: <A HREF="mailto:mud-dev-admin#kanga,nu">mud-dev-admin#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> I'm currently working on a mud design, and what I'm really a little stuck on is the best way to progress with respect to virtual machine design. As I see it, there are four basic options I could go with: 1) A java virtual machine, running compiled java (or java-like) code 2) Adapt an existing virtual machine from another mud to my needs 3) Write my own virtual machine, and make it a target for the egcs compiler, thus allowing it to run byte compiled C/C++ code. 4) Write my own virtual machine, and write my own mud language. Am I missing any options here? Anyway, my thinking comes down to this: The java option has some appeal, I must admit. However, sticking to the jvm spec is both a plus and minus I guess. At least I have something to work from, but it's also rather restrictive. On the up side, there's no need to write a compiler. I know some people were talking about using a jvm for the devmud vm though, so if they have any thoughts, I'd love to hear them. Adapting a virtual machine from another mud seems like the least work, but I question how well it would work. I'd most likely have to also adapt the language that those muds use. If I liked the availible choices at present, I wouldn't want to make something new. So I don't think this would be a good choice. The vm that is a target of gcc/g++ is what I'm really thinking about doing. It would have the advantage of the same code compiling to either byte code or native code, which appeals to me greatly. And there would also be nothing stopping me from writing a compiler for some other language should I decide to do so. In short, this option seems to give the greatest flexibility for the least amount of work. And knowing that quake3 (although not a mud) uses a similar approach (with the lcc compiler I believe), makes me think I'm right. Or am I? The final option is probably a poor one, since the real problem with it is (IMO) that people would rather not learn a language that's only useful on a particular mud. They're more likely to use C/C++ which they already know, or will be useful to them elsewhere if they learn. Thus I'm wary of a making something that doesn't offer a "standard" language, at least as an option (whether that be C/C++/java/whatever). Any thoughts from people who have been through this? What choice did you make and why? -- - Shane King <thandor#ihug,com.au> <ICQ#:2492866> <<A HREF="http://homepages.ihug.com.au/~thandor/">http://homepages.ihug.com.au/~thandor/</A>> "If a machine, a terminator, can learn the value of human life, maybe we can too." - Sarah Connor, Terminator II: Judgement Day. _______________________________________________ MUD-Dev maillist - MUD-Dev#kanga,nu <A HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A> </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="00065" HREF="msg00065.html">Re: [MUD-Dev] Virtual machine design</A></strong> <ul compact><li><em>From:</em> Jo Dillon <emily#thelonious,new.ox.ac.uk></li></ul> <li><strong><A NAME="00058" HREF="msg00058.html">Re: [MUD-Dev] Virtual machine design</A></strong> <ul compact><li><em>From:</em> Alex Stewart <riche#crl,com></li></ul> <li><strong><A NAME="00057" HREF="msg00057.html">Re: [MUD-Dev] Virtual machine design</A></strong> <ul compact><li><em>From:</em> Ben Greear <greear#cyberhighway,net></li></ul> </UL></LI></UL> <!--X-Follow-Ups-End--> <!--X-References--> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00053.html">Re: [MUD-Dev] Blending graphics with text</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00055.html">Re: [MUD-Dev] Blending graphics with text</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00269.html">[MUD-Dev] Re[2]: [MUD-Dev] Sockets</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00057.html">Re: [MUD-Dev] Virtual machine design</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00054"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00054"><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] Sockets</STRONG>, <EM>(continued)</EM> <ul compact> <ul compact> <ul compact> <LI><strong><A NAME="00272" HREF="msg00272.html">Re: [MUD-Dev] Sockets</A></strong>, Travis Casey <a href="mailto:efindel#io,com">efindel#io,com</a>, Sun 16 May 1999, 21:10 GMT </LI> <LI><strong><A NAME="00293" HREF="msg00293.html">RE: [MUD-Dev] Sockets</A></strong>, Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Tue 18 May 1999, 06:37 GMT </LI> </ul> <LI><strong><A NAME="00257" HREF="msg00257.html">Re: [MUD-Dev] Sockets</A></strong>, Mark Gritter <a href="mailto:mark#erdos,Stanford.EDU">mark#erdos,Stanford.EDU</a>, Sat 15 May 1999, 09:31 GMT </LI> <LI><strong><A NAME="00269" HREF="msg00269.html">[MUD-Dev] Re[2]: [MUD-Dev] Sockets</A></strong>, Travis Casey <a href="mailto:efindel#io,com">efindel#io,com</a>, Sun 16 May 1999, 21:07 GMT </LI> </ul> </ul> </LI> <LI><strong><A NAME="00054" HREF="msg00054.html">[MUD-Dev] Virtual machine design</A></strong>, Shane King <a href="mailto:thandor#donut,dhis.org">thandor#donut,dhis.org</a>, Fri 16 Apr 1999, 06:56 GMT <UL> <LI><strong><A NAME="00057" HREF="msg00057.html">Re: [MUD-Dev] Virtual machine design</A></strong>, Ben Greear <a href="mailto:greear#cyberhighway,net">greear#cyberhighway,net</a>, Sat 17 Apr 1999, 04:43 GMT <UL> <LI><strong><A NAME="00059" HREF="msg00059.html">Re: [MUD-Dev] Virtual machine design</A></strong>, Shane King <a href="mailto:thandor#donut,dhis.org">thandor#donut,dhis.org</a>, Sat 17 Apr 1999, 05:09 GMT <UL> <LI><strong><A NAME="00062" HREF="msg00062.html">Re: [MUD-Dev] Virtual machine design</A></strong>, Ben Greear <a href="mailto:greear#cyberhighway,net">greear#cyberhighway,net</a>, Sat 17 Apr 1999, 16:33 GMT <UL> <LI><strong><A NAME="00074" HREF="msg00074.html">Re: [MUD-Dev] Virtual machine design</A></strong>, claw <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Sun 18 Apr 1999, 17:09 GMT </LI> </UL> </LI> </UL> </LI> </UL> </LI> </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>