[MUD-Dev] What's Important in a Driver?

Jonathan Ross Ross at CharterTN.net
Tue Feb 12 11:46:38 CET 2002


I've been designing a byte code interpreter for a while now (over 
100KB in documentation and 2,000 lines of test code) and realize I've 
been going about it the wrong way.  My problem is that I was trying to 
design an interpreter and make it do what I wanted to as I went a long.

What I realized  was I should make a   list of features I'd  like to
support  and then design the  interpreter around that.  My goals are
one thing however, I  plan for other people  to use this core and of
course would like  to present  a  list of  features in  alphabetical
order and ask everyone what they thing they'd  like, what they think
they  wouldn't like, and in what  order of priority  would they list
these  features  incase  any two   come into  conflict.   So without
further ado.

  - Alternative Compilation; Applet or Native Standalones

  - Clustered Server Support; Virtual/Sharded Clustering

  - DHTML Widgets; Exact Correlations to GUI widgets

  - Easy to use HLL syntax; Readability & Less Typing Per Result

  - Excellent Documentation; Examples & Native Function
  Documentation

  - Existing Applications; Web Server, Text Game Server, Text Game
  Client, Virtual Office, etc.

  - Fast Execution

  - Future Technologies; IPv6 Support

  - Graphical User Interface; System Style Widgets, Widget
  Extensibility, & Custom Widgets

  - IDE Features; Code Generation, Code Profiling, Debugging, &
  Editor

  - Multimedia; GIF, JPEG, MP2 & MP3, Streaming Audio, etc.

  - Multiple Processor Support; Multi-Threading

  - Multiple Syntax Style Support; C++ & SQL (LISP?)

  - Portability; Linux64, Windows XP 64, *nix, Windows 32, &
  Macintosh

  - Powerful HLL Features; Headers, Foundation Classes, User Defined
  Types, ?

  - Stability & Reliability; Error Recovery, Detailed Error
  Reporting, & Garbage Collection

Now remember not all of these are on my required list, some of these
are on my wish list and some are slated for future versions.  Also,
just because two things are in the same topic it doesn't mean that
they need equal priority such as Code Profiling and Code Generation.
Obviously if the IDE doesn't generate code there isn't much need for
profiling is there?  Also while I may implement both Mac and x86
Linux version, if I also implement virtual clustering that means
some objects will move from one server to another.  Since Mac is
bigendien and x86 is little endian the question is which one of the
two ports is going to swap the byte order of the data they send thus
making it slightly slower?  So not only whether or not something is
included is important, but the order of priority.

It may take a bit of time and thought from you but eventually when
I'm finished this core will be available to YOU.  So what do you
find most important and how would you prioritize things?

--Jonathan Ross
_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev



More information about the mud-dev-archive mailing list