August 1997
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Jon A. Lambert
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Jon A. Lambert
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features Jon A. Lambert
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Koster, Raph
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Jon A. Lambert
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Jon A. Lambert
- New Topic: Butthead features Martin Keegan
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Richard Woolcock
- New Topic: Butthead features Martin Keegan
- New Topic: Butthead features coder@ibm.net
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features Brandon Cline
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features Koster, Raph
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Matt Chatterley
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features clawrenc@cup.hp.com
- New Topic: Butthead features Martin Keegan
- New Topic: Butthead features Jeff Kesselman
- New Topic: Butthead features Adam Wiggins
- New Topic: Butthead features clawrenc@cup.hp.com
- PirateMUD and CSL Niklas Elmqvist
- PirateMUD and CSL Chris Gray
- PirateMUD and CSL Koster, Raph
- PirateMUD and CSL clawrenc@cup.hp.com
- PirateMUD and CSL Jon A. Lambert
- PirateMUD and CSL clawrenc@cup.hp.com
- PirateMUD and CSL clawrenc@cup.hp.com
- Sparse Arrays and co-ordinate based worlds Michael Hohensee
- Sparse Arrays and co-ordinate based worlds Cynbe ru Taren
- Sparse Arrays and co-ordinate based worlds Michael Hohensee
- Sparse Arrays and co-ordinate based worlds Shawn Halpenny
- Sparse Arrays and co-ordinate based worlds clawrenc@cup.hp.com
- Graphic MUDS/perspectives Koster, Raph
- Ultima Online/Generalized AI Koster, Raph
- Reputation, was butthead features Koster, Raph
- Reputation, was butthead features Jeff Kesselman
- Reputation, was butthead features Koster, Kristen
- Reputation, was butthead features Jeff Kesselman
- Reputation, was butthead features Adam Wiggins
- Graphic MUDS/perspectives Jeff Kesselman
- Generalized AI Resend Koster, Raph
- Generalized AI Resend clawrenc@cup.hp.com
- Interview with Richard Bartle clawrenc@cup.hp.com
- Generalized AI last try! Koster, Raph
- Spellcaster, or Waving Hands clawrenc@cup.hp.com
- Spellcaster, or Waving Hands Chris Gray
- Spellcaster, or Waving Hands Michael Hohensee
- Spellcaster, or Waving Hands clawrenc@cup.hp.com
- Spellcaster, or Waving Hands Michael Hohensee
- Spellcaster, or Waving Hands clawrenc@cup.hp.com
- Spellcaster, or Waving Hands Jon Leonard
- Spellcaster, or Waving Hands clawrenc@cup.hp.com
- Spellcaster, or Waving Hands Jeff Kesselman
- Spellcaster, or Waving Hands Chris Gray
- Spellcaster, or Waving Hands Michael Hohensee
- Spellcaster, or Waving Hands clawrenc@cup.hp.com
- Spellcaster, or Waving Hands Cynbe ru Taren
- Spellcaster, or Waving Hands clawrenc@cup.hp.com
- Spellcaster, or Waving Hands Richard Woolcock
- Spellcaster, or Waving Hands clawrenc@cup.hp.com
- Spellcaster, or Waving Hands Nathan Yospe
- Mud Languages Greg Munt
- MUD languages Chris Gray
- MUD languages clawrenc@cup.hp.com
- Mud Languages Chris Gray
- Mud Languages Nathan Yospe
- Mud Languages Chris Gray
- Mud Languages Greg Munt
- Mud Languages Captain Burrito
- Mud Languages Miroslav Silovic
- Mud Languages Cynbe ru Taren
- Mud Languages Jeff Kesselman
- Mud Languages Chris Gray
- Mud Languages clawrenc@cup.hp.com
- Mud Languages coder@ibm.net
- Mud Languages Jeff Kesselman
- Mud Languages clawrenc@cup.hp.com
- sorry, cut off, was PirateMUD and CSL Koster, Raph
- Introduction Dan Armstrong
- Introduction clawrenc@cup.hp.com
- Introduction John G.
- Introduction clawrenc@cup.hp.com
- Introduction Dan Armstrong
- Introduction clawrenc@cup.hp.com
- Introduction Michael Hohensee
- Mud Languages (Introesque) ##Make Nylander
- Mud Languages (Introesque) ##Make Nylander
- Mud Languages (Introesque) Nathan Yospe
- Quad-trees/Oct-trees Michael Hohensee
- Quad-trees/Oct-trees Dan Armstrong
- node-based 3D coord systems Nathan Yospe
- Signing off... Brandon Van Every
- The 'Socialiser' problem Greg Munt
- The 'Socialiser' problem Nathan Yospe
- The 'Socialiser' problem Greg Munt
- The 'Socialiser' problem Nathan Yospe
- The 'Socialiser' problem Greg Munt
- The 'Socialiser' problem Nathan Yospe
- The 'Socialiser' problem Matt Chatterley
- The 'Socialiser' problem Chris Gray
- The 'Socialiser' problem Jeff Kesselman
- The 'Socialiser' problem Miroslav Silovic
- The 'Socialiser' problem Martin Keegan
- The 'Socialiser' problem Matt Chatterley
- The 'Socialiser' problem clawrenc@cup.hp.com
- Release out! Chris Gray
- Dots in a name? Martin Keegan
- Dots in a name? Chris Gray
- Dots in a name? Matt Chatterley
- Dots in a name? Martin Keegan
- Dots in a name? Matt Chatterley
- Dots in a name? clawrenc@cup.hp.com
- Languages: "strong" vs "weak" Chris Gray
- porting question Chris Gray
- New to this mailing list Richard Woolcock
- New to this mailing list Chris Gray
- New to this mailing list Matt Chatterley
- New to this mailing list Richard Woolcock
- New to this mailing list Chris Gray
- New to this mailing list Marian Griffith
- New to this mailing list Martin Keegan
- New to this mailing list Caliban Tiresias Darklock
- New to this mailing list Jeff Kesselman
- New to this mailing list Caliban Tiresias Darklock
- New to this mailing list Jon A. Lambert
- New to this mailing list Jeff Kesselman
- New to this mailing list Jon A. Lambert
- NPC Ecologies [was 'New to this mailing list'] Greg Munt
- DemonScape clawrenc@cup.hp.com
- Evolution of The Mud Tree Greg Munt
- OT: Invite Batzing? clawrenc@cup.hp.com
- New Topic: ButtheadS and Jurisprudance Jeff Kesselman
- New Topic: ButtheadS and Jurisprudance clawrenc@cup.hp.com
- New Topic: ButtheadS and Jurisprudance Jeff Kesselman
- New Topic: ButtheadS and Jurisprudance clawrenc@cup.hp.com
- Finding Space Michael Hohensee
- Finding Space Shawn Halpenny
- Finding Space Nathan Yospe
- Finding Space Chris Gray
- Finding Space Ned Lovely
- Finding Space Ned Lovely
- Finding Space Chris Gray
- Finding Space Nathan Yospe
- Finding Space Michael Hohensee
- Finding Space clawrenc@cup.hp.com
- OT: test Odysseus Laertes
- Fuzion - RPG game system Jon Lambert
- Character evolution Richard Woolcock
- Character evolution Dan Shiovitz
- Character evolution Matt Chatterley
- Character evolution Richard Woolcock
- Character evolution Matt Chatterley
- Character evolution clawrenc@cup.hp.com
- Character evolution Matt Chatterley
- Character evolution clawrenc@cup.hp.com
- Character evolution Adam Wiggins
- Character evolution Caliban Tiresias Darklock
- Character evolution Richard Woolcock
- Character evolution clawrenc@cup.hp.com
- Character evolution Caliban Tiresias Darklock
- Character evolution clawrenc@cup.hp.com
- Character evolution Matt Chatterley
- Character evolution Caliban Tiresias Darklock
- Character evolution Matt Chatterley
- Character evolution Richard Woolcock
- Character evolution Caliban Tiresias Darklock
- Character evolution Adam Wiggins
- Character evolution Brandon J. Rickman
- Character evolution Marian Griffith
- Character evolution Jeff Kesselman
- Character evolution Matt Chatterley
- Character evolution clawrenc@cup.hp.com
- Character evolution clawrenc@cup.hp.com
- Character evolution Jeff Kesselman
- Character evolution Matt Chatterley
- Character evolution clawrenc@cup.hp.com
- Character evolution Jeff Kesselman
- Character evolution Koster, Raph
- Character evolution Jeff Kesselman
- Character evolution Jon A. Lambert
- Character evolution coder@ibm.net
- Character evolution Jon A. Lambert
- Character evolution clawrenc@cup.hp.com
- Character evolution S001GMU@nova.wright.edu
- Character evolution clawrenc@cup.hp.com
- Character evolution Adam Wiggins
- Character evolution Jon A. Lambert
- Character evolution Matt Chatterley
- Character evolution Marian Griffith
- Character evolution clawrenc@cup.hp.com
- Character evolution Jon A. Lambert
- Character evolution clawrenc@cup.hp.com
- Character evolution Caliban Tiresias Darklock
- Character evolution Jon A. Lambert
- Character evolution coder@ibm.net
- Character evolution Brandon J. Rickman
- Character evolution Richard Woolcock
- Character evolution clawrenc@cup.hp.com
- Character evolution Ola Fosheim Grøstad
- Character evolution Jon A. Lambert
- Character evolution clawrenc@cup.hp.com
- Character evolution Jon A. Lambert
- Character evolution coder@ibm.net
- Character evolution Jon A. Lambert
- Character evolution Jon A. Lambert
- Character evolution Jeff Kesselman
- Character evolution Jeff Kesselman
- Character evolution Jeff Kesselman
- OT: test Jon A. Lambert
- Fuzion Jon A. Lambert
- (subject missing) Maddog Worlds
- Fuzion - Game System Jon A. Lambert
- Fuzion - Game System Frank Crowell
- Fuzion - Game System Jeff Kesselman
- Fuzion - Game System Jeff Kesselman
- Fuzion - Game System Jon A. Lambert
- Fuzion - Game System Jeff Kesselman
- legal mumbo jumbo Jeff Kesselman
- Bladder Control Jeff Kesselman
- Bladder Control Caliban Tiresias Darklock
- Collision Detection Cynbe ru Taren
- Looking for books... Greg Munt
- Looking for books... Jeff Kesselman
- Looking for books... Cynbe ru Taren
- Looking for books... Caliban Tiresias Darklock
- Looking for books... Jeff Kesselman
- Looking for books... Caliban Tiresias Darklock
- Looking for books... Jeff Kesselman
- Looking for books... clawrenc@cup.hp.com
- Looking for books... clawrenc@cup.hp.com
- Looking for books... coder@ibm.net
- Looking for books... Ola Fosheim Grøstad
- Looking for books... coder@ibm.net
- Looking for books... Jon A. Lambert
- Looking for books... clawrenc@cup.hp.com
- Re: Caliban Tiresias Darklock
- Character evolution Jon A. Lambert
- Character evolution Marian Griffith
- Character evolution Nathan Yospe
- Character evolution Jon A. Lambert
- Character evolution Jeff Kesselman
- Character evolution Jeff Kesselman
- Character evolution clawrenc@cup.hp.com
- Character evolution Jeff Kesselman
- Character evolution coder@ibm.net
- Character evolution Jeff Kesselman
- Character evolution Jon A. Lambert
- Character evolution Jeff Kesselman
- Character evolution Jon A. Lambert
- Character evolution Jeff Kesselman
- Character evolution clawrenc@cup.hp.com
- Character evolution Jeff Kesselman
- Character evolution coder@ibm.net
- Character evolution Jeff Kesselman
- Character evolution Felix A. Croes
- Character evolution Jeff Kesselman
- Character evolution Marian Griffith
- Character evolution Jeff Kesselman
- Character evolution Adam Wiggins
- Character evolution Jeff Kesselman
- Character evolution Adam Wiggins
- Character evolution Jeff Kesselman
- Character evolution Adam Wiggins
- Character evolution Chris Gray
- Character evolution Caliban Tiresias Darklock
- Character evolution ##Make Nylander
- Character evolution Brandon J. Rickman
- Character evolution Chris Gray
- Character evolution Nathan Yospe
- Character evolution Jeff Kesselman
- Character evolution Maddy
- Character evolution clawrenc@cup.hp.com
- Character evolution Marian Griffith
- Character evolution Marian Griffith
- Character evolution Matt Chatterley
- Character evolution Ned Lovely
- Character evolution coder@ibm.net
- Character evolution clawrenc@cup.hp.com
- Character evolution Travis Casey
- Character evolution Jeff Kesselman
- Character evolution Chris Gray
- Character evolution coder@ibm.net
- Character evolution coder@ibm.net
- Character evolution Travis Casey
- Character evolution Jeff Kesselman
- Character evolution clawrenc@cup.hp.com
- Character evolution Travis Casey
- Character evolution clawrenc@cup.hp.com
- Character evolution The Eternal City
- Character evolution clawrenc@cup.hp.com
- Character evolution The Eternal City
- Character evolution Jon A. Lambert
- Character evolution Jeff Kesselman
- Character evolution Brian Price
- Character evolution Travis Casey
- Character evolution Jeff Kesselman
- Character evolution Nathan Yospe
- Character evolution clawrenc@cup.hp.com
- Character evolution Shawn Halpenny
- Character evolution Jeff Kesselman
- Character evolution clawrenc@cup.hp.com
- Character evolution Adam Wiggins
- Alignment Jon A. Lambert
- Alignment Richard Woolcock
- Alignment Jeff Kesselman
- Alignment Jeff Kesselman
- Alignment Jon A. Lambert
- Alignment Caliban Tiresias Darklock
- Alignment Ling
- Alignment Hans-Henrik Staerfeldt
- Alignment adam@treyarch.com
- Alignment Spin
- DESIGN: R-Trees (fwd) Greg Munt
- DESIGN: R-Trees (fwd) clawrenc@cup.hp.com
- Alignment & Introductions lapsos
- Alignment & Introductions Travis Casey
- Alignment & Introductions Matt Chatterley
- Alignment & Introductions clawrenc@cup.hp.com
- Foods (was Character evolution) Marian Griffith
- Foods (was Character evolution) Matt Chatterley
- Foods (was Character evolution) clawrenc@cup.hp.com
- Foods (was Character evolution) Matt Chatterley
- Comments on MUDs from Shadists clawrenc@cup.hp.com
- Inebriation Jon A. Lambert
- Language design Greg Munt
- Language design Jeff Kesselman
- Language design Chris Gray
- Language design clawrenc@cup.hp.com
- Language design Chris Gray
- {rape] lets drop it Jeff Kesselman
- {rape] lets drop it Alex Oren
- {rape] lets drop it Caliban Tiresias Darklock
- Invitations coder@ibm.net
- Invitations coder@ibm.net
- Poisons (was Foods) Koster, Kristen
- Poisons (was Foods) Travis Casey
- Poisons (was Foods) Matt Chatterley
- Poisons (was Foods) Jon A. Lambert
- META: Attributions and Eudora clawrenc@cup.hp.com
- META: Attributions and Eudora Jon A. Lambert
- Free DB list coder@ibm.net
- New topic: AI and NPCs Caliban Tiresias Darklock
- New topic: AI and NPCs Travis Casey
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs Travis Casey
- New topic: AI and NPCs Adam Wiggins
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs Travis Casey
- New topic: AI and NPCs Adam Wiggins
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs Adam Wiggins
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs clawrenc@cup.hp.com
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs clawrenc@cup.hp.com
- New topic: AI and NPCs Matt Chatterley
- New topic: AI and NPCs Jon A. Lambert
- New topic: AI and NPCs Matt Chatterley
- New topic: AI and NPCs clawrenc@cup.hp.com
- New topic: AI and NPCs Matt Chatterley
- New topic: AI and NPCs Ola Fosheim Grøstad
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs Ola Fosheim Grøstad
- New topic: AI and NPCs Matt Chatterley
- New topic: AI and NPCs Ola Fosheim Grøstad
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs Ned Lovely
- New topic: AI and NPCs Caliban Tiresias Darklock
- New topic: AI and NPCs Nathan Yospe
- New topic: AI and NPCs Jeff Kesselman
- New topic: AI and NPCs Jon A. Lambert
- New topic: AI and NPCs Adam Wiggins
- New topic: AI and NPCs Nathan Yospe
- New topic: AI and NPCs Jon A. Lambert
- New topic: AI and NPCs Nathan Yospe
- New topic: AI and NPCs Alex Oren
- New topic: AI and NPCs Caliban Tiresias Darklock
- New topic: AI and NPCs Jon A. Lambert
- New topic: AI and NPCs coder@ibm.net
- New topic: AI and NPCs clawrenc@cup.hp.com
- New topic: AI and NPCs coder@ibm.net
- New topic: AI and NPCs Jeff Kesselman
- Re: clawrenc@cup.hp.com
- Rape Threads Nathan Yospe
- Rape Threads Jon A. Lambert
- Rape Threads Nathan Yospe
- Rape Threads Robin Carey
- Rape Threads Caliban Tiresias Darklock
- "Social control", was butthead features Koster, Raph
- "Social control", was butthead features Jeff Kesselman
- "Social control", was butthead features clawrenc@cup.hp.com
- "Social control", was butthead features Jeff Kesselman
- Character evolution [off topic] Alex Oren
- (fwd) NEW: multi-user VRML world clawrenc@cup.hp.com
- (fwd) NEW: multi-user VRML world Brandon Gillespie
- (fwd) NEW: multi-user VRML world Caliban Tiresias Darklock
- (fwd) NEW: multi-user VRML world coder@ibm.net
- MUD universe Felix A. Croes
- MUD universe Chris Gray
- MUD universe clawrenc@cup.hp.com
- MUD universe S001GMU@nova.wright.edu
- MUD universe Nathan Yospe
- MUD Universe S001GMU@nova.wright.edu
- MUD Universe Nathan Yospe
- MUD Universe S001GMU@nova.wright.edu
- MUD Universe clawrenc@cup.hp.com
- MUD universe coder@ibm.net
- MUD universe Felix A. Croes
- MUD Universe Caliban Tiresias Darklock
- MUD universe clawrenc@cup.hp.com
- MUD universe Felix A. Croes
- MUD universe Maddy
- MUD universe clawrenc@cup.hp.com
- MUD universe Felix A. Croes
- MUD universe clawrenc@cup.hp.com
- MUD universe clawrenc@cup.hp.com
- MUD Design Fundamentals (Was: Looking for books...) Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for books...) Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for books...) Caliban Tiresias Darklock
- MUD Design Fundamentals (Was: Looking for books...) Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for books...) Chris Gray
- MUD Design Fundamentals (Was: Looking for books...) Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for books...) coder@ibm.net
- MUD Design Fundamentals (Was: Looking for books...) Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for books...) Adam Wiggins
- MUD Design Fundamentals (Was: Looking for books...) Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for books...) Adam Wiggins
- MUD Design Fundamentals (Was: Looking for books...) Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for books...) coder@ibm.net
- MUD Design Fundamentals (Was: Looking for books...) coder@ibm.net
- MUD Design Fundamentals (Was: Looking for books...) Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for Brian Price
- MUD Design Fundamentals (Was: Looking for Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for Jon A. Lambert
- MUD Design Fundamentals (Was: Looking for Chris Gray
- MUD Design Fundamentals (Was: Looking for coder@ibm.net
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Chris Gray
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Chris Gray
:>[Ola F:]
:>I think you need to stop and hear about some of the systems that people
:>in this list have implemented before you go making blanket statements
:>like that.
:
:So why don't you tell me?!
Because there is too much of it and its not organized very much.
The archives from Chris L. are your only real alternative.
:>: And the fact remains, if you change your
:>:object-system (class-hierarchy if you like) you need a wipe if the data
:>:stored in the internal structure is reflected on the secondary storage
:>:device. (which it will if you use straight persistence)
:>
:>Nonsense.
:>
:> SetParent(AThing, NewParent)$
:>
:>Done.
:
:????
Just showing how you can change the parentage of an object ("thing") on
my system. Its just not a big deal. In a just previous post, you mentioned
that you have been talking about general-purpose programming languages
outside of the special MUD-realm. That has possibly caused a lot of
confusion - I think most folks in the list have been thinking that we
were talking about in-MUD languages, or languages specifically used to
program MUDs.
:>You are thinking only in terms of the C++ style of "objects". When all
:>objects are indirectly referenced (what "objected oriented" meant before
:>C++ came along and clouded the issue), such changes in the hierarcy are
:>fairly trivial.
:
:I think you need to pick up a book on computer language history. Simula67
:has references much like C++, which is natural since Stroustrup is of
:Simula breed. Indirect referencing won't help you much if you split
:objects, does it? If you change your objectsystem there is trouble in
:any conceivable efficient language. Some changes are easier to do in
:some languages, but for the general case, you are in trouble. Indirect
:referencing is of course great for a lot of things, and probably a
:weakness in C++ compared to the languages you use. But not in this
:case.
My apologies for not being up-to-date on my computer language history.
It is over 25 years since I took a course in that at University. Please
explain what you mean by "splitting objects". As someone who isn't at
all in on the current C++ or OOP "scene", terminology used there is
mostly foreign to me. Explain also what you mean by "change your
objectsystem". Certainly if you decide to change the whole way your
use of objects is setup, so that properties are moving, being changed
from explicit to computed, etc., etc., then you want to redo your
system from scratch, regardless of what kind of language you are using.
If "in this case" means the case of changing the parenting of an object,
then my example above shows that it does make a difference. Please keep
in mind that we are not necessarily assuming a C++ style of "object" in
these discussions, so if that is what you mean, you'll have to keep
saying so, to keep us all on track.
To clarify for you (old stuff for others on the list), in my system,
an "object" is just an entity of type "thing", persistently stored in
the on-disk database, that is a small fixed structure (which includes
a "reference" to the parent, if any), along with a flexible array of
property/value pairs. The properties themselves are just "references"
to in-db structures. Thus, the expression "thingRef @ propRef" involves
fetching the thing referenced by 'thingRef' from the db, and scanning
the array of properties attached to it, looking for a pair whose first
element is 'propRef'. If found, the second element of the pair is used.
If not found, the search continues through the parent chain. If not
found at all, the system defines default values for all types of
properties (e.g. 0 for int, 'nil' for "references", etc.). So, as you
can see, changing the parent of a thing is not a big deal.
You may feel free to discard this type of implementation as hopelessly
inefficient, but I have found that it is quite practical for building
MUD systems. An aspect that many people miss here, is that doing this
saves me almost an order of magnitude in space, as compared to systems
like LPC where inheriting something means including a copy of it. When
first designing this system, I had planned to move things in the
array on a somewhat LRU scheme, but have never found it to be necessary -
the CPU costs are all elsewhere. There is usually quite a lot of
messing around to be done with each value fetched or stored. Typically
the big thing is straight text going in and out, especially when something
going on has to send text to several clients.
:Of course, if you care about efficiency/compiler optimization then
:dynamic resolving is shit. If you use C++ (which sucks) you better
:care about efficiency. I would think most people using algol-type
:languages care about performance.
Certainly I care about performance. I'm someone who learned game
programming on CP/M systems, where performance and memory usage were
critical. Those habits have not fully gone away.
:You know, diskbased systems is one of the traditional approaches to
:MUDs... :)
Is it? By "disk based" we don't mean something like the traditional LP,
where source files are parsed when loaded. Nor do we mean something like
Diku's where zone files are parsed and loaded. We mean something where
stuff can be written back to the disk representation when it is no longer
needed (e.g. the caching mechanisms have decided to punt it to make
space for something else).
:But this won't work in a dynamic system where "the wind is blowing",
:where you have global dynamics implemented by solving oversimplified
:differential equations.
What won't work. And why?
: What I was pointing at with coredumping was that
:there is more to persistence than to freeze the systemstate, so in a
:general programming language (OS-level) you somehow have to differentiate
:between those things that are valid between runs and those that are not.
There is more to persistence than saving the state of the entire system?
Huh? Please elucidate.
:I personally cannot see why anyone would design a diskbased system when
:RAM prices seems to be cut in half every 8 months or something, and
:most UNIXes have decent virtual memory systems. In 4 years I'll probably
:have 1GB of RAM and 3GB of swapspace, what bothers me is not lack of
:memory, but memory accesstimes and distribution (multiple servers).
In a word - granularity. The granularity of virtual memory is the native
pagesize. The granularity of the structures in a MUD system can be more
than an order of magnitude smaller than that. That means that intelligent
caching can save you more than an order of magnitude in working set size.
That can have a big payback in your CPU cache hits, etc. Also, many MUD
servers run on systems where there is a policy governing how much machine
resources can be used. In any case, I would consider it "unwise" to
design a system that assumes it can have a multi-gigabyte memory footprint.
With the speed of disks today, any shakeup on the machine, which flushes
out a significant part of that, is going to cause one *big* pause in your
server! Not acceptable in something that is supposed to be "realtime".
:Then again, I am of course coloured by my own attitudes towards design
:of virtual worlds.
As are we all!
:But, I have nothing against a persistent store MUD system. What I warn
:against is using persistent store general language support (OS-level)
:without making separate load/save functions for the most vital information.
:The only reason I pointed out some downs with a persistent object-store
:is that I recommended someone on the list to look up a persistent
:object-store library instead of building his own. Later I felt obliged
:to warn against some downsides that this approach usually will bring
:with it. Which I guess some die-hard persistence guys took personal.
Actually, as an off-time mental exploration, I've been idly thinking
about an OS which is heavily based on a persistent language. There are
several fascinating advantages to it. Gone are the zillion little
configuration files, each with a different GUI to play with them. My
ideas aren't firm enough to say much about it, however, so its best to
drop it. I just thought I'd mention it after your previous paragraph.
--
Chris Gray cg@ami-cg.GraySage.Edmonton.AB.CA - MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Chris Gray
- MUD Design Fundamentals (Was: Looking for Jon A. Lambert
- MUD Design Fundamentals(Was: Looking for Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Jon A. Lambert
- MUD Design Fundamentals(Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals(Was: Looking for Jon A. Lambert
- MUD Design Fundamentals (Was: Looking for Chris Gray
- MUD Design Fundamentals (Was: Looking for Jon A. Lambert
- MUD Design Fundamentals (Was: Looking for Jon A. Lambert
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Miroslav Silovic
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Jeff Kesselman
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for coder@ibm.net
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for coder@ibm.net
- MUD Design Fundamentals (Was: Looking for Ola Fosheim Grøstad
- MUD Design Fundamentals (Was: Looking for Jeff Kesselman
- Re: Adam Wiggins
- Re: Marian Griffith
- Users want sexy muds, not rape... (Re:) Ola Fosheim Grøstad
- OT: Mortality coder@ibm.net
- Re:) Adam Wiggins
- Character evolution [off topic] coder@ibm.net
- Character evolution [off topic] Miroslav Silovic
- **sigh** OOP wars and defining RDBMS Jeff Kesselman
- **sigh** OOP wars and defining RDBMS Ola Fosheim Grøstad
- **sigh** OOP wars and defining RDBMS Jeff Kesselman
- **sigh** OOP wars and defining RDBMS Ola Fosheim Grøstad
- **sigh** OOP wars and defining RDBMS Jeff Kesselman
- **sigh** OOP wars and defining RDBMS Ola Fosheim Grøstad
- Re:) Ola Fosheim Grøstad
- World full of heros Jeff Kesselman
- World full of heros Marian Griffith
- MUD Design Fundamentals (Was: Looking for books. Jon A. Lambert
- MUD Design Fundamentals (Was: Looking for books. Ola Fosheim Grøstad
- OT: Re:) Jon A. Lambert
- Hard Sci-fi muds was Character evolution Brian Price
- Hard Sci-fi muds was Character evolution Jeff Kesselman
- Hard Sci-fi muds was Character evolution Brian Price
- Hard Sci-fi muds was Character evolution Jeff Kesselman
- Hard Sci-fi muds was Character evolution Nathan Yospe
- Hard Sci-fi muds was Character evolution Brian Price
- Hard Sci-fi muds was Character evolution Miroslav Silovic
- Hard Sci-fi Muds was Character Evolution Brian Price
- Hard Sci-fi Muds was Character Evolution Travis Casey
- Hard Sci-fi Muds was Character Evolution Brian Price
- Hard Sci-fi Muds was Character Evolution Travis Casey
- Hard Sci-fi Muds was Character Evolution Brian Price
- Hard Sci-fi Muds was Character Evolution Adam Wiggins
- Hard Sci-fi Muds was Character Evolution Brian Price
- Hard Sci-fi Muds was Character Evolution Adam Wiggins
- Hard Sci-fi Muds was Character Evolution Nathan Yospe
- Hard Sci-fi muds was Character evolution Shawn Halpenny
- Hard Sci-fi muds was Character evolution Brian Price
- Hard Sci-fi muds was Character evolution Brandon J. Rickman
- Hard Sci-fi muds was Character evolution Chris Gray
- Hard Sci-fi muds was Character evolution Brandon J. Rickman
- Hard Sci-fi muds was Character evolution Nathan Yospe
- Hard Sci-fi muds was Character evolution Brandon J. Rickman
- Hard Sci-fi muds was Character evolution clawrenc@cup.hp.com
- Hard Sci-fi muds was Character evolution Brandon J. Rickman
- Hard Sci-fi muds was Character evolution Chris Gray
- Hard Sci-fi muds was Character evolution Brandon J. Rickman
- Hard Sci-fi muds was Character evolution Jon A. Lambert
- Hard Sci-fi muds was Character evolution Adam Wiggins
- Hard Sci-fi muds was Character evolution clawrenc@cup.hp.com
- Hard Sci-fi muds was Character evolution Brandon J. Rickman
- Hard Sci-fi muds was Character evolution Adam Wiggins
- Hard Sci-fi muds was Character evolution clawrenc@cup.hp.com
- Hard Sci-fi muds was Character evolution Matt Chatterley
- Hard Sci-fi muds was Character evolution Chris Gray
- Hard Sci-fi muds was Character evolution Brian Price
- Hard Sci-fi muds was Character evolution Chris Gray
- Modeling spells/skills as collections of affects Brian Price
- Modeling spells/skills as collections of affects Travis Casey
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects Brian Price
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects Travis Casey
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects Travis Casey
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects Brian Price
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects Travis Casey
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects clawrenc@cup.hp.com
- Modeling spells/skills as collections of affects Caliban Tiresias Darklock
- Modeling spells/skills as collections of affects Michael Hohensee
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects Jeff Kesselman
- Modeling spells/skills as collections of affects Matt Chatterley
- Modeling spells/skills as collections of affects clawrenc@cup.hp.com
- Modeling spells/skills as collections of affects Dan Shiovitz
- Modeling spells/skills as collections of affects Jon A. Lambert
- Modeling spells/skills as collections of affects Shawn Halpenny
- Modeling spells/skills as collections of affects Maddy
- Modeling spells/skills as collections of affects Shawn Halpenny
- Modeling spells/skills as collections of affects Adam Wiggins
- Modeling spells/skills as collections of affects Travis S. Casey
- Modeling spells/skills as collections of affects Travis S. Casey
- Modeling spells/skills as collections of affects Caliban Tiresias Darklock
- Modeling spells/skills as collections of affects Nathan Yospe
- Modeling spells/skills as collections of affects Jon A. Lambert
- Modeling spells/skills as collections of affects clawrenc@cup.hp.com
- Modeling spells/skills as collections of affects clawrenc@cup.hp.com
- Modeling spells/skills as collections of affects Dan Shiovitz
- Modeling spells/skills as collections of affects clawrenc@cup.hp.com