【发布时间】:2011-02-25 07:44:17
【问题描述】:
我需要将一些代码从 Scheme 翻译成 Common Lisp。现在,我有这样的事情:
(defun sum (term a next b)
(if (> a b)
0
(+ (term a) (sum term (next a) b))))
(defun sum-int (a b)
(defun (ident x) x)
(sum ident a 1+ b))
但它会产生错误。
*** - DEFUN: 函数名必须是符号,而不是 (IDENT X)
请帮帮我。 谢谢
更新 原代码:
(define (sum term a next b)
(if (> a b)
0
(+ (term a) (sum term (next a) b))))
(define (sum-int a b)
(defun (identity x) x)
(define identity a 1+ b))
【问题讨论】:
-
这有点乱...你能发布原始的Scheme代码吗?
-
正如我所说,Scheme 看起来确实更干净:-/
标签: function functional-programming lisp scheme