gpt4 book ai didi

macros - R6RS Scheme 的 make-variable-transformer 有什么好处?

转载 作者:行者123 更新时间:2023-12-04 07:11:05 25 4
gpt4 key购买 nike

一边看syntax-case在 R6RS 部分,我看到了关键字 make-variable-transformer ,描述为标识符宏。给出的例子非常少,我不明白为什么它是必要的,或者什么用例需要它。事实证明,寻找其使用的其他示例也很困难。大概它使某种形式的语法转换成为可能,或者更优雅?

最佳答案

看完http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-13.html#node_sec_12.3我的看法如下:

如果 mac是一个语法转换器
(mac foo (bar baz))将用转换的结果替换整个 s-expr 这可能会导致任何结果 (SOMETHING) , 而 (foo mac bar)将仅替换 mac导致 (foo SOMETHING bar) .

通常 (set! mac 'foo)会发出错误信号,似乎转换器不能出现在集合表达式的左侧,但如果 mac是可变变压器(set! mac 'foo)而是调用 mac与整个 s-expr。

我的直觉告诉我,如果您开始使用宏实现数据类型,这将很有用。

关于macros - R6RS Scheme 的 make-variable-transformer 有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/325186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com