【发布时间】:2022-11-12 13:36:31
【问题描述】:
我有一个表格列表:
(defvar moo '((:name "vince" :age 35)
(:name "jess" :age 30)))
我在那个列表上调用这个函数:
(defun test (name)
(remove-if-not
#'(lambda (person) (equal (getf person :name) name))
moo))
(test "vince") ;; function call
;; => ((:name "vince" :age 35))
在 lambda 函数中,(person) 参数是如何填充的? person 也在 getf 中使用,但如果我只在测试函数中提供 name,我不确定它是如何被发现的。
我错过了什么?
【问题讨论】:
标签: lambda common-lisp sbcl