En Una crítica de Common Lisp escrita por Rodney A. Brooks y Richard P. Gabriel de Stanford en 1984, se discuten algunas decisiones de diseño retenidas por el comité de normalización de Common Lisp. Si bien la mayor parte de la discusión sigue siendo válida, hay dos declaraciones que se refieren a la tecnología disponible en ese momento y pueden ser falsas hoy.
Estas dos declaraciones son:
Se descartaron demasiados costos del lenguaje con la advertencia de que "cualquier buen compilador" puede hacerse cargo de ellos. Nadie ha escrito aún, ni es probable que lo haga sin un esfuerzo tremendo, un compilador que hace una fracción de los trucos que se esperan de él.
Como soy un principiante de Common Lisp, o incluso un aprendiz, no puedo ser más específico que los autores. Parecen indicar que se ha incorporado una gran generalidad y flexibilidad en varios aspectos del lenguaje, lo que hace que escribir un buen compilador sea bastante difícil.
En COMMON LISP se puso demasiado control sobre la aritmética de coma flotante. Y ciertamente, aunque se puede lograr el comportamiento correcto de un programa intensivo en coma flotante, el rendimiento puede variar enormemente.
Según tengo entendido, parece que escribir código numérico eficiente en Common Lisp es posible pero más desafiante de lo que tiene que ser.
Esto fue hace treinta años. ¿Cómo debería considerar esta declaración hoy si estoy dispuesto a escribir programas Common Lisp para una de las implementaciones comunes de software libre (CLISP, SBCL et al.)?