方案中的#~是什么?

问题描述 投票:0回答:1

方案(诡计)中

#~
是什么意思?

例如 guix 源代码中的这个片段:

#~(list (string-append "prefix=" #$output))
scheme guile guix
1个回答
0
投票

扩展@mnemenaut的评论,这让我走上了正确的轨道:

根据 Guix 参考手册,G 表达式在

(guix gexp)
包中实现。

这是描述

#~
缩写以及
#$
#$@
的摘要:

G 表达式,或 gexp,本质上由三种语法形式组成: gexp、ungexp 和 ungexp-splicing(或简称:#~、#$ 和 #$@),其中 与准引用、取消引用和取消引用拼接相当, 分别。

所以这个缩写不是 Guile Scheme 实现 (R5RS) 的一部分,而是 Guix API 的一部分。难怪在任何与该语言相关的来源上都很难找到它。使用 Guile 时,可能值得将 Guile 参考手册Guix 参考手册R5RS 标准 合并到单个 HTML 文件中。

© www.soinside.com 2019 - 2024. All rights reserved.