lambda - ((lambda () )) 的简写

标签 lambda scheme racket r6rs

((lambda () )) 的方案中是否有简写

例如,代替

((lambda ()
    (define x 1)
    (display x)))

我希望能够做类似的事情
(empty-lambda
    (define x 1)
    (display x))

最佳答案

通常的成语是

(let ()
  (define x 1)
  (display x))

你当然可以把它变成一个快速的宏:
(define-syntax-rule (block E ...) (let () E ...))

关于lambda - ((lambda () )) 的简写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7801989/

相关文章:

c# - 在循环内的延迟任务内使用匿名方法

python - 类型错误 : <lambda>() missing 1 required positional argument: 'w'

loops - Racket 中的 for 循环似乎对我不起作用

recursion - 如何返回具有不同值的列表?

Racket 的 Big Bang 框架 - 使用滴答率让游戏运行得更快?

使用 lambda 的 Java 控制台菜单

python - Pandas 数据框添加基于多个 if 语句的字段

functional-programming - 在Continuation Passing样式中定义定点组合器

scheme - 什么是 Scheme 中的原子?

scheme - 与 Racket 中的操作符类似