last-pair: Symbol’s function definition is void: item

下面的代码:

(defun last-pair-2(item)
  (cond
   ((not (consp item)) item)
   (t (last-pair-2(item)))
   ))

(last-pair-2 (list 23 43 128 3))

报错: last-pair: Symbol’s function definition is void: item

有什么问题呢?

null判断没有问题

#+begin_src emacs-lisp :tangle yes
(defun last-pair(item)
  (if (null (cdr item)) (car item)
        (last-pair (cdr item))))
(last-pair (list 23 43 128 3))
#+end_src

#+RESULTS:
: 3

(last-pair-2 (item))这里写错了

https://www.gnu.org/software/emacs/manual/html_node/elisp/Debugging.html

下次不要这么点事情也上论坛问……

可以选择沉默, 做你自己的领导.

行行行,你说是辣就是 :slightly_frowning_face:

俺就是喜欢指指点点你,你不爽建议憋着

1赞

我选择请你們一起吃禁言好不好