Ca fait un certain temps que je fantasme sur le Lisp. Mais cette fois ci c’est décidé, je m’y met : j’ai commencé à apprendre le Lisp depuis quelques jours. Expériences jusqu’ici :
A première vue, le Lisp est effectivement un chouette langage. C’est encore très vivant, il y a plein d’implémentations et de bibliothèques différentes, des bindings avec des tas d’autres langages — j’ai même découvert des sites web dynamiques écrits en Lisp !
C’est un style de programmation assez différent (déclaratif au lieu d’être fonctionnel), que l’on découvre assez agréable, élégant, et tout. Il n’y a que quelques principes fondateurs, desquels tout découle, ce qui rend le langage finalement assez facile à apprendre : rapidement, on se retrouve à penser en Lisp plutôt qu’en fonctionnel.
D’autre part, tout le monde insiste beaucoup sur la grande flexibilité de Lisp, et c’est vrai : on peut programmer autant en style fonctionnel (boucles, déclarations de variables, etc.) qu’en style déclaratif — il est également possible de faire de l’orienté objet ou aspect.
Les tutoriels sur le Lisp sont légion — mais un peu trop légion, justement : on ne sait pas par quoi commencer. Voici une rapide sélection de bons documents, pour débuter ou approfondir :
Quand au choix d’un interpréteur Lisp, j’utilise pour l’instant Clozure CL, qui fonctionne sur tous les bons Macs — mais il y a certainement plein d’autres bonnes choses.
Le Lisp mérite vraiment qu’on y jette un œil, même sans l’apprendre à fond. C’est souple, puissant, et surtout sa réputation légendaire d’élégance n’est pas usurpée. Et puis apprendre de nouveaux langages, saybien :)