Thanks Alex, Your explanation was the motivation I needed to attempt the recursive version... /Lindsay
> Yes and no. It is correct that the garbage collector does not run at each > release. Instead, it runs when a new cell is needed and the current heap is > found to be full. > > So garbage collection is indeed "immediate", in that as long as there is > free > memory no collection is needed, and if not, the collector runs (typically > just a > few milliseconds). > > If after a collection still no cells are available, the heap is increased. > Therefore, if a program slowly allocates more and more memory, it helps > intially > to allocate a bigger heap, e.g. (gc 800) or whatever size is needed in the > long > run. >