A Road to Lisp: Which Lisp
Contrairement aux langages qui évoluent comme une seule entité, Lisp est une famille de dialectes partageant une syntaxe de base mais différant par leurs opérateurs, sémantiques, bibliothèques et capacités. Pour un débutant, le choix du dialecte importe moins que l'apprentissage des concepts fondamentaux de la pensée lispeuse, et une fois un dialecte maîtrisé il est relativement facile de passer à un autre. Common Lisp est le dialecte le plus mature et standardisé (ANSI 1994), offrant compilation native avec implémentations comme SBCL, un REPL très puissant, CLOS pour l'orientation objet et des outils de débogage avancés. Clojure, conçu pour la JVM, privilégie les fonctions pures, les structures de données immuables, la concurrence sûre et l'interopérabilité avec l'écosystème Java, ce qui le rend adapté aux systèmes de traitement de données et à l'usage en production. Racket est axé sur la création de langages et l'enseignement avec un IDE complet (DrRacket) et des macros hygiéniques, tandis qu'Elisp reste un dialecte spécialisé pour personnaliser et étendre Emacs.