On Tue, Mar 22, 2005 at 04:26:33PM +0100, Erik Huelsmann wrote:
Without knowing the internals of cl-irc...
If an object isn't reachable, it is garbage collected. Circular unreachable references are not a problem.
Wow! That's far more sophisticated than I'm used from any self-memory-managing language. Can I count on that in any lisp implementation? (in other words, is that part of the standard?)
Garbage collection is not part of the standard. However, I don't know of any Lisp that doesn't do GC, and all the Lisp GCs I know of are not reference counting GCs. Reference counting is a pretty bad (but easy, thus popular) strategy for memory management, since it can be slower than a real GC and it has the circularity problems you mention. Reference counting is a joke; Lisp GCs are usually serious.
Zach