Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defparameter *the-list* '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20))
- (defun only-even (lst) (remove-if #'oddp lst))
- (defun remove-every-nth (n lst)
- (let ((i 0))
- (remove-if
- #'(lambda (x) (if (= (setf i (mod (incf i) n)) 0) t nil))
- lst)))
- (defun reverse-halves (lst)
- (cond
- ((null lst) nil)
- ((= (length lst) 1) (copy-list lst))
- (t (let* ((h (truncate (/ (length lst) 2)))
- (l (copy-list lst))
- (r (nthcdr h l)))
- (setf (cdr (nthcdr (- h 1) l)) nil)
- (setf (cdr (nthcdr (- (length r) 1) r)) l)
- r))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement