La façon la plus primitive de créer une liste est d'utiliser la
fonction cons. Cette fonction
prend deux paramètres x et y et renvoie une paire dont
le car est x et le cdr est y. Donc,
l'expression :
(cons 52 (cons "bonjour" (cons 1.234 nil)))
produit la liste de la figure 8.5 de même que l'expression :
(cons 52 (cons (cons 1.23 (cons 2.34 nil)) (cons 34 nil)))
produit celle de la figure 8.6.
Une méthode plus appropriée est d'utiliser la fonction list. Cette fonction est un peu particulière, car elle admet un nombre arbitraire d'arguments. Pour produire la liste de la figure 8.5, il suffit alors d'évaluer l'expression :
(list 52 "bonjour" 1.234)
et pour celle de la figure 8.6 , l'expression:
(list 52 (list 1.23 2.34) 34)
La fonction make-list permet de créer une liste d'une longeur déterminée et dont les éléments sont initialisés avec un objet Common Lisp:
* (make-list 10)
(NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)
* (make-list 4 :initial-element 33)
(33 33 33 33)
*
On remarque l'utilisation du mot-clé :initial-element (voir section 6.3.3) pour déterminer l'élément initial de la nouvelle liste.