«fac correspond exactement à la définition d'une fonction tail recursive.»
Heu je dis peut-être une connerie et du coup j'ai un doute, mais telles que je comprends les choses, fac telle qu'est est définie là n'est pas tail-recursive (multiplication par n entre la récursion et le renvoi de la valeur de retour), contrairement à la version qui est donnée dans un commentaire plus bas (avec fac' qui prend un paramètre supplémentaire acc pour ne pas avoir à faire cette multiplication).
[^] # Re: Tail-call optimization de la factorielle ?
Posté par Lizzie Crowdagger . En réponse à la dépêche Sortie du livre « Parallel and Concurrent Programming in Haskell ». Évalué à 6.
«fac correspond exactement à la définition d'une fonction tail recursive.»
Heu je dis peut-être une connerie et du coup j'ai un doute, mais telles que je comprends les choses, fac telle qu'est est définie là n'est pas tail-recursive (multiplication par n entre la récursion et le renvoi de la valeur de retour), contrairement à la version qui est donnée dans un commentaire plus bas (avec fac' qui prend un paramètre supplémentaire acc pour ne pas avoir à faire cette multiplication).