Several independent points:
1. If you write a program that runs out of stack space, is it a bug?
Is the bug corrected by using a computer system with more stack space?
Perhaps the bug should be reported as "out of stack space... to fix
this, do XYZ...".
But consider a FORTRAN program that consists solely of one statement:
DIMENSION A(1000000000)
is it a bug if your system refuses to allow this?
2. In computer science courses one sometimes is taught how a compiler
can convert recursion to iteration. For the programmer then,
it is a matter of choosing which version of stating the computation is
most perspicuous. Most Lisp systems can convert recursion
to iteration. All Scheme systems are REQUIRED to convert recursion to
iteration when technically possible. I don't know what
is supposed to be dodgy about recursion or recursion in Maxima specifically.
3. Counting primes with Maxima is like using a steam shovel to hammer in
a nail. If this computation is of serious interest, there are far faster
ways of doing this. Probably even within the context of Maxima, a short
Lisp function could do the job another 100X faster.
Happy Easter!
RJF