Recursive function call limit?

Blitz3D Forums/Blitz3D Programming/Recursive function call limit?

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.


In languages such as C, the stack in preallcoated and cannot grow, so if you exceed it you have a stack overflow.



I agree with most of what Koriolis says here, but the
stack issue is not a language issue per se. Rather it is
a compiler/OS property. Some operating systems (e.g. some
flavours of Unix) allow the stack to be grown on demand,
so never run out of stack as such .. programs just use more and more virtual memory.

However, so far as I am aware on Windows you have to say
how much stack you want up-front and then wanton recursion
leads to a stack overflow as Koriolis says.

If recursion is causing headaches, one approach might be
to use Blitz types to model a data stack. This way your
stack is part of the heap and only limited by VM. I used
this technique to manage include files in a preprocessor.

Steve Hill.