Subject: RE: [clisp-list] Program stack overflow

From: "Justice, Randy -CONT(DYN)" <[email-masked]>
Date: Wed Sep 5 05:34:02 2001

Look at the "-m" on start up.  In my experience the "-m" will increase it
some, but there is a limit.
I don't know what the limit is. At this point, I went to a better OS.  If
you are "stuck" with NT
look at product called VMWARE.  One can run a linux box inside of an NT box.
I do some small
testing with VMWARE and Linux and have gotten good results even with "large"
objects.     

Randy Justice

-----Original Message-----
From: Rolf Wester [mailto:[email-masked]]
Sent: Wednesday, September 05, 2001 7:09 AM
To: [email-masked]
Subject: [clisp-list] Program stack overflow

Hi,

I'm using CLISP on Windows NT. When running:

(defun read-file (name)
  (let ((x (make-array '(1046529) :element-type :single-float
:initial-element 0.0 :fill-pointer 0 
:adjustable t))
	    (y (make-array '(1046529) :element-type :single-float
:initial-element 0.0 :fill-pointer 0 
:adjustable t))
        (z (make-array '(1046529) :element-type :single-float
:initial-element 0.0 :fill-pointer 0 
:adjustable t)))
       (with-open-file (in name)
	     (do ((xx (read in nil 'eof) (read in nil 'eof))
              (yy (read in nil 'eof) (read in nil 'eof))
              (zz (read in nil 'eof) (read in nil 'eof)))
			 ((eql zz 'eof)) 
             (progn (vector-push-extend xx x)
                    (vector-push-extend yy y)
                    (vector-push-extend zz z))))
         (values x y z)))
(compile 'read-file)
(setf result (multiple-value-bind (mx my mz) (read-file "big_file.txt")
(list mx my mz)))
(progn
 (setq result (multiple-value-call #'list (read-file "big_file.txt")))
 nil)

on a big file (about 27 MB) I get the message:

*** - Program stack overflow. RESET
*** - Program stack overflow. RESET

and so on. With a small file everything works as expected. I originally
posted this to 
comp.lang.lisp and got an answer from Sam Steingold. He wrote:

> I am pretty sure this is the printer problem: you probably have
> *print-circle* set to T or something. 

*print-circle* is set to NIL.

>try

>(progn
 >(setq result (multiple-value-call #'list (read-file "big_file.txt")))
 >nil)

I tried this but got the same error messages as before.

I would be very appreciative for help.

Rolf Wester

-------------------------------------
Rolf Wester
[email-masked]

_______________________________________________
clisp-list mailing list
[email-masked]
https://lists.sourceforge.net/lists/listinfo/clisp-list

---

From: "Rolf Wester" <[email-masked]>
Date: Wed Sep 5 06:17:03 2001

Thanks for your reply. I tried -m 50 MB but this had no influence on the problem.

Rolf Wester