La función CONSCONS es el constructor de lista básico. Construye listas insertando elementos en listas existentes (incluso vacías). El nuevo elemento ocupa el primer lugar de la lista (CAR lista).
El nuevo_elemento puede ser un átomo o una lista. Debe tenerse en cuenta que CONS, al igual que casi todas las funciones LISP es una función no destructiva, es decir que no altera los argumentos que recibe. Así que para conservar la lista con el nuevo primer elemento, será necesario utilizar SETQ. La función más general para incorporar nuevos elementos a una lista sería entonces:
donde nombre_lista sería el símbolo asociado al
objeto lista. la función opera aunque nombre_lista no hubiera
sido previamente asociado a una lista, pues no debemos olvidar que un
símbolo no asociado se evalúa como NIL, que es, a su
vez, equivalente a una lista vacía.
Funciones de ejemplo usando CONS/CAR/CDR La función LIST
LIST Recupera cualquier número de expresiones y las combina
en una lista. Admite tanto átomos como listas. Si uno de los agumentos
es una lista vacía NIL aparecerá como uno de los
términos de la lista.
La función APPEND
APPEND Se utiliza para combinar listas. Elimina el primer nivel de
anidación de cada una de las listas que recibe para combinar todas en
una misma lista. Si una de las listas que recibe está vacía esta
lista no aparecerá en la lista resultante.
Una muestra de la utilización de APPEND para eliminar las sublistas vacías:
|
Apuntes para un Curso... > Programación de Aplicaciones Gráficas > 2. Técnicas Fundamentales > 2.2. Funciones >