<!-- MHonArc v2.4.4 --> <!--X-Subject: Re: [MUD-Dev] Introduction --> <!--X-From-R13: fvybivpNfepr.ue ([vebfyni Evybivp) --> <!--X-Date: from major.globecomm.net [207.51.48.5] by mx01.ny.us.ibm.net id 863429397.77114-1 Mon May 12 09:29:57 1997 --> <!--X-Message-Id: 199705120929.LAA02034#regoc,srce.hr --> <!--X-Content-Type: text/plain --> <!--X-Reference: 9705112035.7znx@ami-cg.GraySage.Edmonton.AB.CA --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, Re: [MUD-Dev] Introduction</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:silovic#srce,hr"> </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="msg00393.html">Previous</a> | <a href="msg00395.html">Next</a> ] Thread: [ <a href="msg00438.html">Previous</a> | <a href="msg00369.html">Next</a> ] Index: [ <A HREF="author.html#00394">Author</A> | <A HREF="#00394">Date</A> | <A HREF="thread.html#00394">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>Re: [MUD-Dev] Introduction</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] Introduction</LI> <LI><em>From</em>: <A HREF="mailto:silovic#srce,hr">silovic#srce,hr</A> (Miroslav Silovic)</LI> <LI><em>Date</em>: Mon, 12 May 1997 11:29:58 +0200 (MET DST)</LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> > :A *small* codebase (ideally also under 300k) that's well documented > :and cleanly coded such that it's easy to extend if necessary. > > That might be a problem. Mine is currently: > > MUD.index 49524 ----rwed Friday 23:15:35 > MUD.data 591194 ----rwed Friday 23:15:35 > > When you make your server generic, and put all the actual scenario rules, > etc. in to the database, that can push up the size of the database a lot. > You can aim for a small one, and it might even start that way, but I bet > it will grow, and grow, and grow... Cold has the same problem. Codebase is 1.3 megs (plus builtin docs), and pretty much all of it is used to drive hypertextual VR and give easy access to the building and coding. > Might I suggest that you make your language strongly-typed? Many people > don't like that (not me!), but it can make it run a lot faster if you > don't have to do very many run-time checks or conversions. Similarly, This is an expensive tradeoff, and one you want to think CAREFULLY about. You can go for strongly-typed (i.e. all /variables/ are declared in advance, and dynamically-typed (i.e. data keeps type-tags, and types are checked in runtime). If you do strongly-typed language, you'll be able to compile it to C without too much pain, and gain a lot of speed. Unfortunately, the payoff is in the ease of programming. MUD tend to use mixed datastructures a lot, and when you're able to just say 'this is a list' without worrying about the types of the elements inside it (as dynamically-typed languages allow), you can spew working code at blinding speed, and you'll also make your hired coders much happier. For that matter, I'm still pondering writing a MUD in LISP or Scheme. There are *extremely* good compilers out there, some of which produce numbercrunching code that is up to par with C. You can declare the variables (to help the compiler) but you don't have to. Macros are powerful enough that making it parse and run C-like syntax is a two-hours job, even if you don't use all the yacc-clones that exist for Common LISP and Scheme. Once you start using it, you gain access to 20 years of AI software developed specifically for LISP (for instance, rule-based expert systems, natural language parsers, graph-analisys tools, to name a few - all have direct applications in MUD world). > force people to pre-declare variables, so that you can access them via > something other than their name at run-time (e.g. an offset from a > current scope pointer, allocated on entry to the scope). Uhhh, why do you need that? It looks like terribly unsafe programming to me. Remember, you'll have a lot of people coding on your MUD (at least if you want fast development). It seems like a good idea to prevent their code for having side-effects that are impossible to track. Miro </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="00376" HREF="msg00376.html">Re: [MUD-Dev] Introduction</A></STRONG> <UL><LI><EM>From:</EM> cg#ami-cg,GraySage.Edmonton.AB.CA (Chris Gray)</LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00393.html">Re: [MUD-Dev] Re: Administrative notes</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00395.html">Re: [MUD-Dev] Re: Administrative notes</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00438.html">Re: [MUD-Dev] Introduction</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00369.html">Re: [MUD-Dev] Re: several messages</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00394"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00394"><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] Introduction</STRONG>, <EM>(continued)</EM> <ul compact> <ul compact> <ul compact> <ul compact> <LI><strong><A NAME="00441" HREF="msg00441.html">Re: [MUD-Dev] Introduction</A></strong>, clawrenc <a href="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</a>, Wed 14 May 1997, 04:03 GMT </LI> </ul> <LI><strong><A NAME="00403" HREF="msg00403.html">[MUD-Dev] Introduction</A></strong>, Ross Nicoll <a href="mailto:rnicoll#lostics,thenet.co.uk">rnicoll#lostics,thenet.co.uk</a>, Mon 12 May 1997, 21:49 GMT </LI> <LI><strong><A NAME="00432" HREF="msg00432.html">Re: [MUD-Dev] Introduction</A></strong>, clawrenc <a href="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</a>, Wed 14 May 1997, 00:58 GMT </LI> </ul> <LI><strong><A NAME="00438" HREF="msg00438.html">Re: [MUD-Dev] Introduction</A></strong>, clawrenc <a href="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</a>, Wed 14 May 1997, 01:44 GMT </LI> </ul> <LI><strong><A NAME="00394" HREF="msg00394.html">Re: [MUD-Dev] Introduction</A></strong>, Miroslav Silovic <a href="mailto:silovic#srce,hr">silovic#srce,hr</a>, Mon 12 May 1997, 16:29 GMT </LI> </ul> </LI> <LI><strong><A NAME="00369" HREF="msg00369.html">Re: [MUD-Dev] Re: several messages</A></strong>, Jeff Kesselman <a href="mailto:jeffk#tenetwork,com">jeffk#tenetwork,com</a>, Sun 11 May 1997, 12:59 GMT <UL> <LI><strong><A NAME="00370" HREF="msg00370.html">Role-playing [was Re: several messages]</A></strong>, Matt Chatterley <a href="mailto:root#mpc,dyn.ml.org">root#mpc,dyn.ml.org</a>, Sun 11 May 1997, 17:20 GMT <UL> <LI><strong><A NAME="00374" HREF="msg00374.html">Re: [MUD-Dev] Role-playing [was Re: several messages]</A></strong>, Adam Wiggins <a href="mailto:nightfall#inficad,com">nightfall#inficad,com</a>, Mon 12 May 1997, 01:34 GMT <UL> <LI><strong><A NAME="00381" HREF="msg00381.html">Re: Role-playing [was Re: several messages]</A></strong>, Matt Chatterley <a href="mailto:root#mpc,dyn.ml.org">root#mpc,dyn.ml.org</a>, Mon 12 May 1997, 03:34 GMT </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>