<!-- MHonArc v2.4.4 --> <!--X-Subject: Re: Just a bit of musing --> <!--X-From-R13: ptNnzv-pt.UenlEntr.Sqzbagba.OP.QO (Quevf Uenl) --> <!--X-Date: from tacitus.globecomm.net [207.51.48.7] by mx01.ny.us.ibm.net id 857490589.135739-1 Tue Mar 4 15:49:49 1997 --> <!--X-Message-Id: 9703041423.7und@ami-cg.GraySage.Edmonton.AB.CA --> <!--X-Content-Type: text/plain --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, Re: Just a bit of musing</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA"> </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="msg00048.html">Previous</a> | <a href="msg00050.html">Next</a> ] Thread: [ <a href="msg00046.html">Previous</a> | <a href="msg00050.html">Next</a> ] Index: [ <A HREF="author.html#00049">Author</A> | <A HREF="#00049">Date</A> | <A HREF="thread.html#00049">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>Re: Just a bit of musing</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: Just a bit of musing</LI> <LI><em>From</em>: <A HREF="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</A> (Chris Gray)</LI> <LI><em>Date</em>: Tue, 4 Mar 97 07:23:17 MST</LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> :I posit that, in general, command interpreters for muds are Bad Things. The :proposal runs sorta like this: : The command interface to a mud can be viewed as a context free grammar. A :such, one should be able to whip up a command interpreter with lex/yacc. :I've started on it at least a dozen times but never managed to quite :finish. Is this worthwhile? Thoughts? I think you'll get a more rigid parser than you want for a MUD. You'll also get one that you can't add verbs to while the MUD is running. If you do it the classical lex/yacc way, you won't even be able to add words to the language! :The proxy and daemon communicate through shared memory or semaphores or :some such. Advantages: :the proxy <-> daemon link conform to a single interface scheme :the proxy <-> user link can conform to several protocols... say one for : text-based users, another for binary messages etc. :if the user has link troubles, or is idle or whatever, it's the proxy that :hangs. :the proxy-daemon comm method is thru semaphores/shared memory. daemon :writes updates to a shared segment that is read-only to all proxies. daemon :reads new info from one segment per proxy. If the proxy has trouble and the :segment isn't updated, the daemon skips it. Look ma... user A's troubles :don't cascade and screw user B. Thoughts? That's what I've got. I use AmigaOS Exec messages between the proxies and the central server. In the Amiga's single address space, that's lots fast. I currently have three different proxy programs: MUDAgent (talks serial port reliable protocol), MUDBinary (supports my custom client over a TCP link), and MUDText (supports a dumb telnet text-only connection). The reason I did this is a bit different, however. My in-MUD interpreted language has a recursive descent parser in a shared library. It needs to maintain its own state in a parse (input can be huge!). So, I needed a separate process for each client running something other than my custom MUD client (which does the parsing local). -- Chris Gray cg#ami-cg,GraySage.Edmonton.AB.CA </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00048.html">Re: Quadtrees?</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00050.html">Re: Just a bit of musing</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00046.html">Re: Just a bit of musing</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00050.html">Re: Just a bit of musing</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00049"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00049"><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: Just a bit of musing</STRONG>, <EM>(continued)</EM> <ul compact> <LI><strong><A NAME="00039" HREF="msg00039.html">Re: Just a bit of musing</A></strong>, coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Mon 03 Mar 1997, 03:13 GMT </LI> <LI><strong><A NAME="00042" HREF="msg00042.html">Re: Just a bit of musing</A></strong>, Dmitri Kondratiev <a href="mailto:dima#paragraph,com">dima#paragraph,com</a>, Mon 03 Mar 1997, 09:36 GMT </LI> <LI><strong><A NAME="00045" HREF="msg00045.html">Re: Just a bit of musing</A></strong>, Carter T Shock <a href="mailto:ctso#umiacs,umd.edu">ctso#umiacs,umd.edu</a>, Mon 03 Mar 1997, 21:22 GMT </LI> <LI><strong><A NAME="00046" HREF="msg00046.html">Re: Just a bit of musing</A></strong>, Wout Mertens <a href="mailto:Wout.Mertens#rug,ac.be">Wout.Mertens#rug,ac.be</a>, Mon 03 Mar 1997, 22:51 GMT </LI> <LI><strong><A NAME="00049" HREF="msg00049.html">Re: Just a bit of musing</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Tue 04 Mar 1997, 23:49 GMT </LI> <LI><strong><A NAME="00050" HREF="msg00050.html">Re: Just a bit of musing</A></strong>, coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Wed 05 Mar 1997, 08:53 GMT </LI> <LI><strong><A NAME="00051" HREF="msg00051.html">Re: Just a bit of musing</A></strong>, Nathan Yospe <a href="mailto:yospe#hawaii,edu">yospe#hawaii,edu</a>, Wed 05 Mar 1997, 14:31 GMT </LI> <LI><strong><A NAME="00052" HREF="msg00052.html">Re: Just a bit of musing</A></strong>, coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Wed 05 Mar 1997, 14:33 GMT </LI> <LI><strong><A NAME="00054" HREF="msg00054.html">Re: Just a bit of musing</A></strong>, coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Wed 05 Mar 1997, 16:15 GMT </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>