以下是令人惊叹的书籍“Lisp 之国”中示例的一些源代码:
(defun random-node ()
(1+ (random *node-num*)))
(defun edge-pair (a b)
(unless (eql a b)
(list (cons a b) (cons b a))))
(defun make-edge-list ()
(apply #'append (loop repeat *edge-num*
collect (edge-pair (random-node) (random-node)))))
由于我没有Lisp 的本能,我发现将一个方法分成多行(作为命令式样式)然后尝试将其变形为函数式样式很有用。
你能帮我把make-edge-list函数分成多行吗?