【发布时间】:2014-04-12 01:58:54
【问题描述】:
我在理解如何将 Let Form 过程转换为未命名(匿名)过程时遇到问题。网上没有太多关于这个主题的材料或例子。有人可以帮忙吗?
(let ((x 30))
(let ((x (+ 5 25)) (y (* 5 x)))
(* x y 24)))
【问题讨论】:
我在理解如何将 Let Form 过程转换为未命名(匿名)过程时遇到问题。网上没有太多关于这个主题的材料或例子。有人可以帮忙吗?
(let ((x 30))
(let ((x (+ 5 25)) (y (* 5 x)))
(* x y 24)))
【问题讨论】:
((lambda (x)
((lambda (x y)
(* x y 24))
(+ 5 25) (* 5 x)))
30)
【讨论】:
“网上没有太多关于该主题的材料或示例。”
您是否尝试在任何 Scheme 标准中查找 let 的定义?
(define-syntax let
(syntax-rules ()
((let ((name val) ...) body1 body2 ...)
((lambda (name ...) body1 body2 ...)
val ...))
;; ignore 'named-let'
))
以上内容不能解决您的作业问题,但了解以上内容将帮助您解决作业问题。
【讨论】:
syntax-rules 宏,如果他们只是做 101 级课程,这不是他们所具备的技能。 :-P