首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在R5RS方案中是否有宏可以使用"λ“字符作为"lambda”?

在R5RS方案中是否有宏可以使用"λ“字符作为"lambda”?
EN

Stack Overflow用户
提问于 2014-10-26 06:11:58
回答 1查看 248关注 0票数 3

在R5RS方案中是否有一个宏可以使用"λ“字符作为"lambda”?在Gambit中的从这里开始 -r5rs我尝试过:

代码语言:javascript
复制
(define-syntax λ
  (syntax-rules ()
    ((_ . more) (lambda . more))))

但是我不断地得到Ill-formed expression错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-26 07:38:07

您似乎在寻找一个读取器宏,但我不认为它们在Scheme中是标准化的。

这样做是可行的:

代码语言:javascript
复制
# pu@pumbair: ~  cat test2.scm
(define-syntax λ
    (syntax-rules ()
       ((_ param body ...) (lambda param body ...))))
(display ((λ (x y) (+ x y)) 1 2)) (newline)
(display ((λ () 1))) (newline)
(display ((λ (a . b) b) 'a 'b 'c)) (newline)

# pu@pumbair: ~  gsi -:s test2.scm
3
1
(b c)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26570324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档