Resets and repops

Chris Gray cg at ami-cg.GraySage.Edmonton.AB.CA
Sun Mar 23 17:23:09 CET 1997


[Nathan Y:]
:You mentioned before slow hardware, I think? Though, having seen many LP
:drivers, disk and in memory, drag their creeping little feet and consume
:mass resources... and they are supposedly bytecode interpreters... well, I
:can't see a scripted language doing too well... I'm biased, though. I've
:gone through a great deal of trouble trying to construct a highly flexible
:native code base.

There have been Amiga versions of LP, and some users have said that my
system is an order of magnitude faster in interpreting. I suspect that
factor has reduced with the new LP's. Most of it, I think, is due to the
fact that my system is strongly typed, so there is no run-time type
checking and conversion needed (except some checking when a proc pointer
is retrieved from a db-ref and called). My guess is about 10-50 times
slower than native. Straight-line code is cheap. Calls are expensive, as
are db-refs. I think LP has some poor design decisions in the way they
do their scenarios, and that this costs them a lot of performance.

I just never wanted to have to shut down the system and recompile in order
to change something. With the interpreter, I can use the client's editor
to edit MUD-code, and the change takes effect immediately, for all users.
I just have to pay for that flexibility. Having a disk-based DB was needed
to run on machines with only a couple of Meg of RAM. My current DB is
only about 600K, but I do have big visions. Perhaps not realistic ones!

Curiosity question again: how big are your DB's guys? From the LP stuff
I've seen, they take about 10 times the space I do for any given thing,
but I haven't really gone out of my way in that regard - I just avoid all
the pointless duplication they seem to have. There are a couple of ways
to measure this, both of which are of interest to me: one is the number
of source lines for scenario (if you can separate that out!), and the
other is the resulting database size (if you can measure that!). Mine is
about 33K lines. I know you guys have much more advanced systems than
mine, but I'm trying to get a gut feel for how much further I have to go!

--
Chris Gray   cg at ami-cg.GraySage.Edmonton.AB.CA



More information about the mud-dev-archive mailing list