【发布时间】:2018-09-16 23:04:55
【问题描述】:
我正在编写一个代码片段,它获取列表中的一个元素并创建一个具有绝对值的变量。问题是 DrRacket 不喜欢我使用 Let 的方式。 let: 语法错误(缺少绑定对或正文) in: (let ((abs (car l))))
(define abs
(lambda (l)
(if(>= (car l) 0)
(let
((abs(car l))))
(let
((abs(- car l)))))
)
)
谢谢
【问题讨论】:
-
let创建了一个局部变量,您可以在let的主体内使用该变量。您的两个let表达式都没有使用变量abs的主体。 -
另外,
(- car l)应该是(- (car l))