(de pythag (N) (co 'pythag (for X N (for Y (range X N) (for Z (range Y N) (when (= (+ (* X X) (* Y Y)) (* Z Z)) (yield (list X Y Z)) ) ) ) ) ) ) (while (pythag 20) (println @) )