I wrote the simplest little CF I could think of to test tail recursion. I think I'm doing it correctly -- passing the value back to the function at the end each recursive call.
startValue = startValue + 1
If ( startValue < 500000 ; CountTo500K(startValue) ; startValue )
Now, the CF works fine for 50,000 if I tie this to a calculated field and create a new record.
But, if I have 500,000 as with the above, I just get FM's nice little "?" with no way to debug this.