(defun gen-list (&key (length (gen-integer :min 0 :max 10)) (elements (gen-integer :min -10 :max 10))) (lambda () (loop repeat (funcall length) collect (funcall elements))))