Curbside Collection is a TCL answer to the problem answered by Garbage Collection in other systems. The idea behind Curbside Collection is that the developer is a better judge of what should and should not be automagically dumped by the system. For performance reasons, most applications need certain objects to always exist at a given name, and having to request the object be transparently created for each call gets to be expensive. Especially because we are using script to create the objects, not C code or Java bytecodes. Yes, one could design several mechanisms into the Garbage Collection system that would allow an object to side step it. But why? Curbside Collection uses a central mechanism that registers objects that are known by the developer to be temporary and fleeting. I call this mechanism "thanatos", after the Greek God of Death. The record keeping in Thanatos is simply an array that stores the object handle and a clock seconds time stamp of when the object was last referenced. Objects interact with thantatos through several simple procedures: ::thanatos::alloc OBJECT - Register an object with thanatos ::thanatos::free OBJECT - De-Register and object ::thanatos::touch OBJECT - Mark that an object has been used In the background thanatos periodically runs a polling script. The script looks through the objects in its care. If an object has not been "touched" in a while, it is put on the curb. After the polling script, thanatos politely tells the object to die. Well actually it calls the destructor or the object systems' delete mechanism as appropriate. Polite objects will call ::thanatos::free in their destructor, but just in case thanatos will also free the object after the delete call.