In A Critique of Common Lisp, scritto da Rodney A. Brooks e Richard P. Gabriel di Stanford nel 1984, vengono discusse alcune decisioni progettuali mantenute dal comitato di normalizzazione di Common Lisp. Mentre la maggior parte della discussione rimane valida, ci sono due affermazioni che si riferiscono alla tecnologia disponibile al momento e potrebbero essere false oggi.
Queste due affermazioni sono:
Troppi costi della lingua sono stati liquidati con l'ammonizione che "qualsiasi buon compilatore" può occuparsene. Nessuno ha ancora scritto - e probabilmente non lo farà senza uno sforzo tremendo - un compilatore che fa una frazione dei trucchi che ci si aspetta.
Dato che sono un novizio del Lisp comune o anche un apprendista, non sono in grado di essere più specifico di quanto lo siano gli autori. Sembrano affermare che una grande generalità e flessibilità sono state integrate in diversi aspetti del linguaggio, il che rende piuttosto difficile scrivere un buon compilatore.
In LISP COMUNE un po 'troppo controllo è stato posto sull'aritmetica in virgola mobile. E certamente, sebbene sia possibile ottenere il comportamento corretto di un programma ad alta intensità in virgola mobile, le prestazioni possono variare notevolmente.
A quanto ho capito, sembra che scrivere un codice numerico efficiente in Common Lisp sia possibile ma più impegnativo di quanto non sia.
Questo è stato trenta anni fa. Come dovrei considerare queste affermazioni oggi se sono disposto a scrivere programmi Common Lisp per una delle implementazioni comuni di software libero (CLISP, SBCL et al.)?