]> git.eshelyaron.com Git - emacs.git/commitdiff
(butlast, nbutlast): Moved to subr.el.
authorKenichi Handa <handa@m17n.org>
Thu, 28 Dec 2000 12:16:03 +0000 (12:16 +0000)
committerKenichi Handa <handa@m17n.org>
Thu, 28 Dec 2000 12:16:03 +0000 (12:16 +0000)
lisp/emacs-lisp/cl.el

index 0e8897db2f4269b8f759b27cab10946e404da1b7..1b8bb838a8f9bf34e8a275935cc0078194236bb2 100644 (file)
@@ -472,20 +472,6 @@ SEQ, this is like `mapcar'.  With several, it is like the Common Lisp
 ;;    (while (consp (cdr x)) (pop x))
 ;;    x))
 
-(defun butlast (x &optional n)
-  "Returns a copy of LIST with the last N elements removed."
-  (if (and n (<= n 0)) x
-    (nbutlast (copy-sequence x) n)))
-
-(defun nbutlast (x &optional n)
-  "Modifies LIST to remove the last N elements."
-  (let ((m (length x)))
-    (or n (setq n 1))
-    (and (< n m)
-        (progn
-          (if (> n 0) (setcdr (nthcdr (- (1- m) n) x) nil))
-          x))))
-
 (defun list* (arg &rest rest)   ; See compiler macro in cl-macs.el
   "Return a new list with specified args as elements, cons'd to last arg.
 Thus, `(list* A B C D)' is equivalent to `(nconc (list A B C) D)', or to