gpt4 book ai didi

macros - 欺骗方案中的宏展开

转载 作者:行者123 更新时间:2023-12-02 09:37:32 25 4
gpt4 key购买 nike

在 Guix 中有一个由宏组成的层,用于美化 srfi-9 记录的创建和操作

代码在guix/records.scm

代码量大且清晰

我想扩展这些宏来查看它们的输入和输出,以便了解它们的作用

问题是,即使是标准的普通 srfi-9 记录也是围绕结构的宏,依次

因此,宏扩展为我提供了完全扩展的代码来创建和操作结构。

我更愿意看到单次宏扩展的结果,看看 guix 宏生成了哪些 srfi-9 代码

在 Clojure 中有 macroexpandmacroexpand-1

macroexpand-1 执行一次宏扩展,并且 macroexpand 重复调用 macroexpand-1 直到没有更多的宏可以扩展正在处理的表格

你可以看到这个here

Guile方案中有类似的选项吗?

我是否缺少任何工作流程技巧、任何工具、任何库函数或宏来处理此问题?

最佳答案

好的,新闻文件中有这段摘录

** Removed function: `macroexpand-1'

It is unclear how to implement `macroexpand-1' with syntax-case, though PLT Scheme does prove that it is possible.

我不知道macroexpand-1和syntax-case之间的问题是什么,我也不知道Racket正在做什么

但至少现在我知道 Macroexpand-1 已被明确删除

关于macros - 欺骗方案中的宏展开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50073207/

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