【发布时间】:2014-02-01 16:17:06
【问题描述】:
我在 mac os X 终端中运行 CLISP。类似 (% 3 5) 的简单 eval 输出 评估:未定义的功能 %
它在 emacs 的 ielm 模式下正确评估。提前感谢您的帮助
【问题讨论】:
-
Common Lisp 与 Emacs Lisp 不是同一种语言。对于 Common Lisp,它有 very good documentation,因此您应该能够轻松找到所有 numeric functions。
-
@mbratch 宏是不是有点矫枉过正?我只是在想
(setf (symbol-function '%) #'rem)之类的东西(可能有更好的方法来写同样的东西;我是一名计划者,而不是一名 CLer)。 -
@ChrisJester-Young 这不仅仅是矫枉过正;不方便;
(mapcar '% xs ys)如果它是一个宏,你就不能这样做。正如您所建议的那样,设置符号功能将是一种选择。另一个是(defun % (number divisor) (rem number divisor))并添加一些声明以实现内联。