From the NannyMUD documentation
2001-09-29
toss_program - toss program - a memory saver
GENERAL The 'toss program' mechanism is the biggest memory saving mechanism available to the driver; uptimes would be very much shorter without it. You should strive to write objects that can be tossed wherever it is possible to have such an object. DETAILS When the driver loads an object, it will check whether the object will only be setup, or if it will change later on. If it will only be setup, the driver will remove any program code in the object: it 'tosses' the code. This is known as 'toss program'. Any object with the following characteristics is a candidate for tossing: + it has at most one function, and that is 'reset'. + it has no global variables. + it does not execute any code in reset() when arg is 1. INHERITING A TOSSED OBJECT If you inherit a tossed program, you basically inherit an empty object, which is perfectly legal but probably not what you want. In this case you should define an extra function: int query_no_toss_program() { return 1; } and the program won't be tossed and your inheriting objects will be happy.