Récursivité

La récursivité est bien sûr une structure de contrôle de base en Common Lisp. Pourtant, elle est moins souvent utilisée que dans des langages comme Scheme, Haskell, ML, Prolog, etc. Il est rare d'écrire une fonction récursive pour traverser une liste en Common Lisp. On retrouve la récursivité en Common Lisp plutôt quand le domaine est récursivement défini.

Il y a deux raisons qui expliquent l'utilisation relativement rare de la récursivité sur les listes en Common Lisp. D'abord, il existe un grand nombre de fonctions hautement paramétrables sur les listes, évitant ainsi à l'utilisateur d'en écrire. De plus les primitives d'itération de Common Lisp sont très sophistiquées et elles donnent souvent un programme plus compact que la récursivité.



Irene DURAND
2011-10-14