<!-- MHonArc v2.4.4 --> <!--X-Subject: [MUD-Dev] Languages for MUD drivers --> <!--X-From-R13: "Znherag Pbffnivg" <ynheragNargqvir.pbz> --> <!--X-Date: Mon, 15 Nov 1999 18:37:16 -0800 --> <!--X-Message-Id: E11nY0E-0006Ai-00@kanga.nu --> <!--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] Languages for MUD drivers</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:laurent@netdive.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="msg00258.html">Previous</a> | <a href="msg00263.html">Next</a> ] Thread: [ <a href="msg00266.html">Previous</a> | <a href="msg00264.html">Next</a> ] Index: [ <A HREF="author.html#00259">Author</A> | <A HREF="#00259">Date</A> | <A HREF="thread.html#00259">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>[MUD-Dev] Languages for MUD drivers</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] Languages for MUD drivers</LI> <LI><em>From</em>: "Laurent Bossavit" <<A HREF="mailto:laurent#netdive,com">laurent#netdive,com</A>></LI> <LI><em>Date</em>: Tue, 16 Nov 1999 03:01:55 +0100</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> Hi all, As my quest for the perfect M* server design continues (I've been a deep lurker on the list for over one year, though some of you might remember my interest at one time in porting LambdaMOO to Java (done, but not the panacea I hoped)) I am more and more convinced that the crucial parts are the underlying (implementation) and visible (world- building) languages - ideally both being the same. A lot of the issues M* server designers and implementors struggle with are in fact active areas of programming language research. These are in approximate order of importance (for M* writers!) - distributed processing support (for large worlds) - concurrent processing support (for reactive worlds) - object orientation (for modular worlds) - object persistence (as in MOO) - run-time mutability (aka dynamic recompilation, as in MOO/ColdC) - reflective capabilities (so programs can modify themselves) - security (to enable in-game access to world code by 'wizards') If we assume a language with the above properties, writing a M* driver is almost trivial. A thin layer of network code will handle client connections; a command parser will probably provide the most challenging exercise in low-level programming, writing core character/monster/item classes would almost belong to the 'world design' category. I've recently been looking a dozens of languages old and new to see if any fit the bill - I'll mention as a random selection Obliq, Phantom, Oz, Erlang... So far only one actively supported language comes really close, E (www.erights.org). It's unfortunately not quite finished yet - the language spec itself is still evolving and persistence is not implemented - but in most other respects quite attractive for the purposes stated above. (In fact it actually started out as a language specifically to support virtual environments). If you agree (or disagree) with the above assessment, or have pointers to languages which would make good candidates for implementing a M* server, please speak up. ;) -[Morendil]- Press Ctrl-Alt-Del to continue _______________________________________________ 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="00347" HREF="msg00347.html">[MUD-Dev] Languages for MUD drivers</A></strong> <ul compact><li><em>From:</em> "Petri Virkkula" <pvirkkul@iki.fi></li></ul> <li><strong><A NAME="00334" HREF="msg00334.html">Re: [MUD-Dev] Languages for MUD drivers</A></strong> <ul compact><li><em>From:</em> J C Lawrence <claw@cp.net></li></ul> <li><strong><A NAME="00288" HREF="msg00288.html">RE: [MUD-Dev] Languages for MUD drivers</A></strong> <ul compact><li><em>From:</em> "Ian Macintosh" <iman@issystems.co.nz></li></ul> <li><strong><A NAME="00268" HREF="msg00268.html">Re: [MUD-Dev] Languages for MUD drivers</A></strong> <ul compact><li><em>From:</em> bruce@puremagic.com</li></ul> <li><strong><A NAME="00264" HREF="msg00264.html">Re: [MUD-Dev] Languages for MUD drivers</A></strong> <ul compact><li><em>From:</em> Joey Hess <joey@kitenet.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="msg00258.html">Re: bugs (was RE: [MUD-Dev] players who "take away from the game")</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00263.html">Re: [MUD-Dev] code base inquiry</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00266.html">[MUD-Dev] Library news</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00264.html">Re: [MUD-Dev] Languages for MUD drivers</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00259"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00259"><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] Admins as Mortals</STRONG>, <EM>(continued)</EM> <ul compact> <LI><strong><A NAME="00322" HREF="msg00322.html">RE: [MUD-Dev] Admins as Mortals</A></strong>, Sellers, Michael <a href="mailto:MSellers@maxis.com">MSellers@maxis.com</a>, Wed 17 Nov 1999, 23:48 GMT </LI> <LI><strong><A NAME="00338" HREF="msg00338.html">Re: [MUD-Dev] Admins as Mortals</A></strong>, PartyG2816 <a href="mailto:PartyG2816@aol.com">PartyG2816@aol.com</a>, Thu 18 Nov 1999, 01:33 GMT </LI> </ul> </LI> <LI><strong><A NAME="00270" HREF="msg00270.html">[MUD-Dev] Matrix</A></strong>, Laurent Bossavit <a href="mailto:laurent@netdive.com">laurent@netdive.com</a>, Tue 16 Nov 1999, 21:19 GMT <LI><strong><A NAME="00266" HREF="msg00266.html">[MUD-Dev] Library news</A></strong>, J C Lawrence <a href="mailto:claw@cp.net">claw@cp.net</a>, Tue 16 Nov 1999, 05:12 GMT <LI><strong><A NAME="00259" HREF="msg00259.html">[MUD-Dev] Languages for MUD drivers</A></strong>, Laurent Bossavit <a href="mailto:laurent@netdive.com">laurent@netdive.com</a>, Tue 16 Nov 1999, 02:37 GMT <UL> <LI><strong><A NAME="00264" HREF="msg00264.html">Re: [MUD-Dev] Languages for MUD drivers</A></strong>, Joey Hess <a href="mailto:joey@kitenet.net">joey@kitenet.net</a>, Tue 16 Nov 1999, 03:46 GMT </LI> <LI><strong><A NAME="00268" HREF="msg00268.html">Re: [MUD-Dev] Languages for MUD drivers</A></strong>, bruce <a href="mailto:bruce@puremagic.com">bruce@puremagic.com</a>, Tue 16 Nov 1999, 05:49 GMT </LI> <LI><strong><A NAME="00288" HREF="msg00288.html">RE: [MUD-Dev] Languages for MUD drivers</A></strong>, Ian Macintosh <a href="mailto:iman@issystems.co.nz">iman@issystems.co.nz</a>, Wed 17 Nov 1999, 16:31 GMT <UL> <LI><strong><A NAME="00299" HREF="msg00299.html">Re: [MUD-Dev] Languages for MUD drivers</A></strong>, Greg Miller <a href="mailto:gmiller@classic-games.com">gmiller@classic-games.com</a>, Wed 17 Nov 1999, 21:24 GMT </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>