On Thu, 30 Apr 2009 08:37:15 -0300 Mario Domenech Goulart 
<[email protected]> wrote:

> O fatorial de 10 é (* 10 9 8 7 6 5 4 3 2):
>
> $ cat eval-fact.scm
> #! /usr/bin/csi -s
>
> (use numbers srfi-1)
>
> (print (eval `(* . ,(iota 10 1))))
>
> $ ./eval-fact.scm
> 3628800
>
>
> Chicken possui uma limitação quanto ao número de argumentos que
> procedimentos podem receber (normalmente 1000).

Obviamente,

    (apply * (iota n 1))

também funciona dentro dos limites de tamanhao da lista de argumentos de
procedimentos (n < 1001).  Meu cérebro está tão condicionado a não
utilizar `apply' para listas de argumentos apocalipsicamente grandes que
acabei desviando inconscientemente desta estratégia...

Um abraço.
Mario

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lisp-br" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/lisp-br?hl=en
-~----------~----~----~----~------~----~------~--~---

Responder a