Dans A Critique of Common Lisp écrit par Rodney A. Brooks et Richard P. Gabriel de Stanford en 1984, certaines décisions de conception retenues par le comité de normalisation de Common Lisp sont discutées. Bien que la plupart des discussions restent valables, deux déclarations font référence à la technologie disponible à l'époque et peuvent être fausses aujourd'hui.
Ces deux déclarations sont:
Trop de coûts de la langue ont été rejetés avec l'avertissement que «tout bon compilateur» peut s'en occuper. Personne n'a encore écrit - et ne le fera probablement pas sans un effort énorme - un compilateur qui fait une fraction des tours attendus de lui.
Comme je suis novice en Common Lisp, ou même apprenti, je ne peux pas être plus précis que les auteurs. Ils semblent indiquer qu'une grande généralité et flexibilité ont été intégrées dans plusieurs aspects du langage, ce qui rend la rédaction d'un bon compilateur assez difficile.
Dans COMMON LISP, un peu trop de contrôle était placé sur l'arithmétique à virgule flottante. Et certainement, bien que le comportement correct d'un programme intensif en virgule flottante puisse être atteint, les performances peuvent varier énormément.
D'après ce que je comprends, il semble que l'écriture de code numérique efficace en Common Lisp soit possible mais plus difficile qu'elle ne doit l'être.
C'était il y a trente ans. Comment devrais-je considérer ces affirmations aujourd'hui si je suis disposé à écrire des programmes Common Lisp pour l'une des implémentations courantes de logiciels libres (CLISP, SBCL et al.)?