Lecteur Lisp - Lisp reader

Dans le langage de programmation Lisp , le lecteur ou la readfonction est l' analyseur qui convertit la forme textuelle des objets Lisp en la structure d'objet interne correspondante.

Dans le Lisp original, les expressions S se composaient uniquement de symboles , d'entiers et des constructeurs de liste et . Plus tard, Lisps, culminant en Common Lisp , a ajouté des littéraux pour les nombres à virgule flottante, complexes et rationnels, les chaînes et les constructeurs pour les vecteurs. ( xi... )(x . y)

Le lecteur est responsable de l'analyse de la structure de la liste, de l' intégration des symboles, de la conversion des nombres en forme interne et de l'appel des macros de lecture.

Lire le tableau

Le lecteur est contrôlé par le readtable, qui définit la signification de chaque caractère .

Lire les macros

Contrairement à la plupart des langages de programmation, Lisp prend en charge l'exécution de programmes au moment de l'analyse, appelés «macros de lecture» ou «macros de lecture». Ceux-ci sont utilisés pour étendre la syntaxe de manière universelle ou spécifique au programme. Par exemple, l' opérateur de formulaire cité peut être abrégé en . L' opérateur peut être défini comme une macro de lecture qui lit la liste suivante et l'enveloppe avec . De même, l' opérateur backquote (`) peut être défini comme une macro de lecture. (quote x)'x'quote

Les références

Bibliographie

  • John McCarthy et coll. , Manuel du programmeur LISP 1.5 , MIT Press, 1962.
  • David A. Moon , Manuel de référence MACLISP , 1974.
  • Guy Steele , Common LISP: The Language , deuxième édition, 1990.