Lisp at 1. Expressions symboliques

Home
Up
Previous
Next

Une expression symbolique (ou expression) est soit un atome, soit une liste.

Atomes :

  • atomes numériques : 12, 4.1, etc;
  • atomes symboliques (ou symboles): poire, +, *, etc.

Listes :

Une liste est une parenthèse gauche suivie de 0 ou plusieurs éléments, suivis d'une parenthèse droite; un élément d'une liste est une expression symbolique (donc un atome ou une liste). Exemples :

(+ 1 2)
(+ 1 2 3)
(* 1 2)
(+ 1 2 (* 1 2 3))

Remarques
  1. Les listes ci-dessus sont toutes des expressions correctes (c'est-à-dire bien formées) du langage : toutes ces expressions respectent la syntaxe du langage (autrement dit, ce sont des programmes). La syntaxe générale de l'application d'une fonction à des arguments s'écrit :

    (<fonction> <argument1> <argument2> ...)

  2. En plus d'être une expression bien formée comme ci-dessus, une liste peut être simplement une donnée du type liste, comme dans la liste (1 2 3). En fait, il n'y a pas de distinction entre les programmes et les données : (+ 1 2 3) est lu comme un programme ou comme une donnée. A ce stade, on peut considérer les données du Lisp comme étant l'ensemble des objets atomiques (numériques et symboliques) et des listes.

    Exemples de données :

    0
    pomme
    (0 1 2 3)
    (0 (1) (2 (3)))
    (+ 1 2 3)

  3. La liste vide est représentée par () ou par le symbole NIL.

  4. Notez que la définition d'une liste est une définition récursive.

Home    Previous    Up    Next
contact
site map
Last update : 26/12/2001