Operaciones sobre listas en Lisp

  • (list arg1 … argN) Devuelve la lista formada por los elementos arg1, … hasta argN.
  • (cons arg1 arg2) Devuelve la lista cuyo car es arg1 y cdr arg2.
  • (car lista) Devuelve el primer elemento de la lista.
  • (cdr lista) Devuelve la lista compuesta por todos los elementos de la lista menos el primero.
  • (first lista) Devuelve el primer elemento de la lista (second, third, … hasta tenth para devolver el segundo, tercero, … décimo respectivamente).
  • (nth n lista) Devuelve el elemento número n de la lista.
  • (last lista) Devuelve el último elemento de la lista.
  • (butlast lista n) Devuelve la lista sin los últimos n elementos.
  • (append lista1 lista2) Concatena la lista1 y la lista2.
  • (length lista) Devuelve el número de elementos que tiene la lista.
Comentarios
  1. Ado

    excelente la (nth n lista) la andaba buscando 😀

    Responder

  2. Me ha venido de lujo el listado. Estoy preparando el examen de IA y no tenia las funciones a mano!

    Gracias

    Responder

  3. Jaime

    Hola buenos días. Tengo una duda acerca de una función en lisp. A ver si podéis aayudarme.

    estoy utilizando la función subst( new old lista). Lo que me gustaría saber si es posible pasarla en el parámetro new, un valor de una tupla. Pero a la hora de sustituirlo en la lista me lo meta sin paresíntesis. Por ejemplo yo hago

    (setf lista ‘(a b c d)
    (subst (list b e) (b) lista)
    Resultado => (a ( b e ) c d)

    Yo lo que quiero es que me lo meta sin paréntesis.

    Gracias

    Responder

Deja un comentario