towers of hanoi | Takeuchi function | combinations of a set | letrec macro
; Towers of Hanoi ; HANOI - solve for N disks from X to Y via Z ; HANOI1 - solve for N disks (defun hanoi (n x y z) (cond ((zerop n) nil) (t (append (hanoi (sub1 n) x z y) (list (list x y)) (hanoi (sub1 n) z y x))))) (defun hanoi1 (n) (hanoi n 'left 'middle 'right))