compilation of tail recursive functions



Hallo Volker,



> 
> (C1) n_sum_1(n,res):=
>   if n=0 then res
>   else n_sum_1(n-1,n+res)$
> (C2) n_sum_1(1000,0);	--->  Bind stack overflow.
> 

I don't see any problems here:

Maxima 5.9.2.19cvs http://maxima.sourceforge.net
Using Lisp CLISP ()
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
This is a development version of Maxima. The function bug_report()
provides bug reporting information.
(%i1) n_sum_1(n,res):=
  if n=0 then res
  else n_sum_1(n-1,n+res)$
(%i2) n_sum_1(1000,0);
(%o2)                               500500



could that be a GCL specific problem?

By the way, which Maxima version are you running?

Bis bald.
-- 
Mario Rodriguez Riotorto
www.biomates.net