[Ecls-list] Bug report (?) and two questions
Juan Jose Garcia-Ripoll
Juan.Ripoll at mpq.mpg.de
Wed Dec 12 02:11:03 UTC 2001
"Dr. Edmund Weitz" wrote:
> I was just going to run some test cases against CMUCL, CLISP,
> LispWorks, and Allegro, but I get the same behaviour ("needed to
> allocate blacklisted block...") when calling (FAC 10000) with a new
> version of ECLS built from CVS sources which I just checked out after I
> read your mail.
> (defun fac (n)
> (if (= n 0)
> 1
> (* n (fac (1- n)))))
Thanks for checking ECL out. Regarding the failure in your tests there
are a few points worth noticing
- The recursive version will fail in the interpreter due to interpreter
stack overflow.
- The recursive version in the compiler, in a linux machine (Debian),
works ok.
- The following interpreted version should also work
(defun fac (x &aux (y 1)) (dotimes (i x) (setq y (* y (1+ i))))
y)
Please make sure that the code has been properly updated (For instance,
you should find a couple of GC_malloc_atomic_ in alloc_2.d) and that you
made a fresh new build of ECL (otherwise the core library will not get
updated).
Juanjo
More information about the ecl-devel
mailing list