我无法将以下内容从let form转换为procedure
( let (( a 5)
b (* 5 2))
(let (b (* a b)
(c 10))
(+ b c)))
答案 0 :(得分:0)
让表达式只是lambda的语法糖。
例如:
(let ((a 1)
(b 2))
(* a b))
与
相同((lambda (a b) (* a b)) 1 2)
答案 1 :(得分:0)
首先,你必须解决它。
( let (( a 5)
(b (* 5 2)))
(let ((b (* a b))
(c 10))
(+ b c)))
let的定义是
(let (( variable-name1 value1)
(variable-name2 value2)
(variable-namen valuen))
body)
转换为lambda是
((lambda (variable-name1 variable-name2 variable-namen) body) value1 value2 valuen)