Hi Bruno,
I suggest you ask this question on the haskell-cafe@ mailing list -
it's a general Haskell question, and you'll get a much more detailed
answer there.
Thanks, Neil
On Tue, Mar 23, 2010 at 12:01 PM, Bruno Schneider
Hi all,
I have this tail recursive factorial function:
factorial :: Integer -> Integer factorial 0 = 1 factorial n = fat' n 1 where fat' 1 fat = fat fat' n fat = fat' (n-1) (n*fat)
Whenever I run it with a number of 20000 or more I get a stack overflow error. It doesn't seem a problem with the large resulting number because, if so, the message should be something like "Garbage collection fails to reclaim sufficient space". Other functions seem to able to handle a larger number of recursive calls.
So, what is the problem with this particular function?
-- Bruno Schneider http://www.dcc.ufla.br/~bruno/ _______________________________________________ Hugs-Users mailing list Hugs-Users@haskell.org http://www.haskell.org/mailman/listinfo/hugs-users