Falta lógica

Aos especialistas em LISP…

Porque consigo calcular o fatorial de 10000 com a função que o TedLoprao citou??? Como o LISP trata as operações matemáticas???

Bom como Haskell tb eh uma linguagem derivada de Lisp(pelo q li) isso acontece porque o tipo inteiro(Integer) é INFINITO.Não há estouro…só por limitações da sua máquina.Pegue uma sequencia de fibonnacci em Haskell por exemplo:

fib:: Integer->Integer fib 0=0 fib 1=1 fib (n+2)=fib(n+1)+fib n

Se vc botar para rodar fib 50 por exemplo,funcionará perfeitamente…
Mas demora um eternidade…
Detalhes:
http://www.haskell.org/aboutHaskell.html

Realmente, ele só não irá calcular quando faltar recursos de máquina (ao menos foi o que percebi nos meus testes, hehehe)… Entretanto, se vc chegar ao topo do fatorial que postei, tente fazer um sem utilizar recursividade que vc perceberá que ele pode chegar mais além (essa eu tbm testei :wink: )

Fallow