1;; The tower of Hanoi.
2
3(defun hanoi (n)
4  (transfer 'A 'B 'C n))
5
6(defun print-move (from to)
7  (princ "Move ring from " from " to " to "\n") t)
8
9(defun transfer (from to via n)
10  (if (eq n 1)
11      (print-move from to)
12    (transfer from via to (- n 1))
13    (print-move from to)
14    (transfer via to from (- n 1))))
15