Subject: Re: Memory leakage in Lisp From: Erik Naggum <erik@naggum.no> Date: 20 Nov 2002 00:32:23 +0000 Newsgroups: comp.lang.lisp Message-ID: <3246741143948417@naggum.no> * Drew McDermott | I know that garbage collection is supposed to make memory leaks | impossible, but in fact they do seem to occur. A memory leak is defined as memory that cannot be referenced, yet is not reclaimed and available for re-use. Since the whole point with garbage collection is to reclaim memory that cannot be referenced, and copying garbage collectors have a really hard time copying memory that is not actually referenced, something is clearly amiss here. Unless you think there is a bug in the garbage collection algorithm, I think calling it a "memory leak" is misleading. I presume you are not talking about the memory that has been allocated from the system and that is available to allocate from within the Common Lisp system. You can ask Allegro CL to release such memory with the function `system:resize-areas´. | I have had the following experience in more than one Lisp implementation: | Memory space is allocated and then never reclaimed by the garbage | collector, even though there is no way that I know of to get to the stuff | that is supposedly still in use. How do you see the discrepancy? Is the output from `(room t)´ misleading? -- Erik Naggum, Oslo, Norway Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.