【发布时间】:2016-02-01 14:31:32
【问题描述】:
由于我是 elisp 语言的新手,我为 elisp 编写了以下代码。
当我评估它时,它失败了。
回显区显示错误“our-member: Invalid function: (quote a)”
我也对 lisp 语言的基本元素感到困惑。
'a 不是 obj 或列表吗?什么是列表定义,因为我在 wiki 和 google 上找不到。
(defun our-member(obj list)
(if (nil list)
nil
(if (eql (car list) obj)
list
(our-member obj (cdr list)))))
(our-member('a '(a b c)))
【问题讨论】:
-
检查
nil值的函数称为null。您的代码可以简化为(if (or (null list) (eql (car list) obj)) list ... -
@tripleee 是的,我已经发现该函数既不为空也不为空。谢谢!
标签: elisp