Joh*_*ohn 6 lisp function common-lisp
假设我有一个列表并执行某项操作的函数:
(defun foo(aList)
(loop for element in aList ...))
Run Code Online (Sandbox Code Playgroud)
但是如果列表是嵌套的,我想在循环执行之前先将它展平,所以我想使用另一个函数(defun flatten(aList))来展平任何列表:
(defun foo(flatten(aList))
(loop for element in aList ...))
Run Code Online (Sandbox Code Playgroud)
Lisp不喜欢这个.还有另一个直接的方法吗?
这是一种方式:
(defun foo (alist)
(loop for element in (flatten alist) ...)
Run Code Online (Sandbox Code Playgroud)