Sam Steingold wrote:
>it's useful to tell CLISP that it will be needing a lot of memory.
>see also <http://clisp.cons.org/impnotes/faq.html#faq-stack>:
> If you really do need more Lisp stack, you can increase
> it by telling CLISP to pre-allocate more memory
Indeed, even on modern Linux systems, memory is partitioned and not
likely changeable at run-time (witness the current 2/2 or 3/1GB Linux
kernel space discussions).
Here's an example from a special CLISP version of mine.
./lisp.run -M lispinit.mem
STACK depth: 98206
./lisp.run -M lispinit.mem -m2MB
STACK depth: 65438
./lisp.run -M lispinit.mem -m99MB
STACK depth: 3243934
I forgot whether the output is in #objects, or #bytes.
The less stack you have, the more likely a set of deeply recursive
algorithms on non-trivial data will overflow the stack. For beginners,
a small limit is good as bogus recursive functions will be detected