gpt4 book ai didi

racket - 垂直条可以用作 Racket 中标识符的一部分吗?

转载 作者:行者123 更新时间:2023-12-01 11:29:33 25 4
gpt4 key购买 nike

我想在 Racket 中为量子状态定义一个变量,按照约定写成:

foo+bar

Reader reference告诉我这是不可能的,因为:

| starts a subsequence of characters to be included verbatim in the delimited sequence



然而,我惊讶地发现页面 "Special characters" in Rosetta Code ,在“ Racket ”部分,提到:

Vertical bars can be used as identifier quotations used around it



这是一个糟糕的公式还是 Racket 中的变量名称实际上可以以某种方式使用垂直条?有人可以举个例子吗?

提前致谢。

最佳答案

竖线是一种避免语言阅读器对其内部字符进行通常解释的方法。因此它可用于定义包含特殊字符的符号,例如:

(define |(| 5)

(+ |(| 1) ; produces 6

您始终可以使用反引号在符号中插入竖线(请参阅 manual ),例如您可以编写符号 \|0>这将在内部解释为 |0> .但是在源文件中,您必须始终使用 \|0>而不是 |0> .或者,为了避免这种情况,您可以使用 extension 更改标准阅读器。 .

但我认为没有简单的方法可以使用像 |0> 这样的带有竖线的符号。在“标准” Racket 中,因为竖条被其阅读器以特殊方式处理。

关于racket - 垂直条可以用作 Racket 中标识符的一部分吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33936505/

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