(defmacro nth-expr (n &rest expr-list) (nth (1- n) expr-list) ) ; ; (defmacro test (a &rest b) `(list ',a ',b ',b)) (do ((i 1 (1+ i)) (f 1 (* f i))) ((> i 4) f) ()) (defun fak (n) (do ((i 1 (1+ i)) (f 1 (* f i))) ((> i n) f) ())) (defun tower-of-hanoi (disks from to aux) (cond ((null disks)) (t (progn (tower-of-hanoi (cdr disks) from aux to) (format t "Move disk ~A from tower ~A to tower ~A~%" (car disks) from to) (tower-of-hanoi (cdr disks) aux to from))))))