On 14 Jan 2003, Nicolas Neuss wrote:

> Trying
> (defun f () (cons () (F)))
> (F)
>
> and watching with top, I observe that CMUCL dies having allocated around
> 200MB.

This does not cons at CONS.

What you might have wanted to do here is to use recursion to define an
iterative process:


(defun f ()
  (labels
      ((c (so-far)
          (c (cons nil so-far))))
    (c nil)))


This does cons.


-- 
regards,               [EMAIL PROTECTED]              (o_
 Thomas Fischbacher -  http://www.cip.physik.uni-muenchen.de/~tf  //\
(lambda (n) ((lambda (p q r) (p p q r)) (lambda (g x y)           V_/_
(if (= x 0) y (g g (- x 1) (* x y)))) n 1))                  (Debian GNU)


Reply via email to