2.2.3.1. Ejemplos con CONS, CAR y CDR


;;;Funciones de ejempo usando CONS/CAR/CDR
;;;Cambia el primer término de lista2 por el de lista1
(defun permutainicio (lista1 lista2)
(cons (car lista1) (cdr lista2))
) ;_ fin de defun


;;;Elimina el primero y el último término
(defun recortalista (lista)
(reverse (cdr (reverse (cdr lista))))
) ;_ fin de defun


;;;Predicado Palindrome-p
;;;Comprueba si una lista es igual
;;;leída de izquierda a derecha o al revés
(defun palindrome-p (lista)
(equal lista (reverse lista))
) ;_ fin de defun

;;;Posición en lista
(defun posicion (termino lista)
(if (member termino lista)
(- (length lista) (length (member termino lista)))
nil
) ;_ fin de if
) ;_ fin de defun