From: Bruno C. <ca...@it...> - 2005-01-19 14:12:05
|
hello everybody; clisp version 2.33.2 appears to show a problem when you try to add more than 4095 numbers (e.g., integers) as in (progn (setq l nil) (dotimes (i 4096) (push i l)) (apply #'+ l) ) The message error displayed on breaking into the debugger is: *** - APPLY: too many arguments given to + Now, 4096 is a quite suspect number isn't it? (some #define BUF_SIZE of sorts?). Oddily enough, also, function #'- works at 4096, but fails at 4097 .... Much older version 2.27 does not show the problem: #'+ happily digests hundreds of thousands of arguments, and when it finally fails (say at 500000), it does so because of stack overflow. *** - Lisp stack overflow. RESET In fact, this is more in tune with a recursive implementation of #'+. - Has anyone heard of this before? - Anyone able to confirm these behaviours? thanks in advance; bruno |