Bind stack overflow



Using Maxima complied with Clozure CL,  the code is up to


943 0.0943 0.0100000014821704
944 0.0944 0.0100000014853156
945 0.0945 0.0100000014884641
946 0.0946 0.010000001491616
947 0.0947 0.0100000014947712
948 0.0948 0.0100000014979297
949 0.0949 0.0100000015010915


and it's still running (not all that fast so likely I'll stop  it in a bit).  I suppose there is some possibility we're using different versions of nint.  My version says  /* nint.mac   Nov 12, 2012 ....



--Barton Willis
   University of Nebraska at Kearney, Kearney, Nebraska, USA


________________________________
From: maxima-bounces at math.utexas.edu <maxima-bounces at math.utexas.edu> on behalf of Denis Roegel <denis.roegel at loria.fr>
Sent: Sunday, December 15, 2013 08:20
To: maxima at math.utexas.edu
Cc: Denis Roegel
Subject: Bind stack overflow

Dear all,

I am beginning to use maxima and the first thing I want to do is produce a table of elliptic integrals.
I have used Ted Woollett's macros nint.mac and it works fine, except when I call it more than 1000
times in a row. I am getting the output below. Ted had a look at my problem and suggested
that I post it here. The file denis3.mac, as well as all the other necessary files (nint.mac)
are available here: http://www.loria.fr/~roegel/tmp/bug.zip

In the meantime, I have found a workaround, in that I compute smaller ranges of integrals,
but it is a bit cumbersome.

I'd appreciate any help,

Thanks

Denis Roegel
University of Lorraine, Nancy, France

------------------------------------------------------------------------------------------------------
The source file is

load("nint.mac")$

for n:0 thru 10000 do
   ( b:n/10000.0,
     nint_val :  nint(sqrt((1-sqrt(1-b^2)^2*t^2)/(1-t^2)),t,0,0.01),
     print(n,b,nint_val)
   )$

and the output

$ maxima

Maxima 5.24.0 http://maxima.sourceforge.net
using Lisp GNU Common Lisp (GCL) GCL 2.6.7 (a.k.a. GCL)
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) batchload("denis3.mac");

0 0.0 0.01
1 1.0E-4 0.01
2 2.0000000000000001E-4 0.010000000000007
3 2.9999999999999997E-4 0.010000000000015
4 4.0000000000000002E-4 0.010000000000027
5 5.0000000000000001E-4 0.010000000000042
6 5.9999999999999995E-4 0.01000000000006
7 6.9999999999999999E-4 0.010000000000082
...
685 0.0685 0.010000000782089
686 0.0686 0.010000000784374
687 0.0687 0.010000000786662
688 0.0688 0.010000000788954
Maxima encountered a Lisp error:

 Error in PROGN [or a callee]: Bind stack overflow.

Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
(%i2)