butlast

Die Funktion butlast erwartet ein Argument und wertet dieses aus. Bei dem Argument muss es sich um eine Liste mit mindestens einem Element handeln. Das Ergebnis des Funktionsaufrufs ist eine Kopie der Liste, jedoch ohne das letzte Element.

> (butlast (list 1 2 3))
(1 2)

Die Definition von butlast basiert auf reverse und rest.

(setq butlast
  (lambda (l)
    (reverse
      (rest
        (reverse l)))))