gpt4 book ai didi

parsing - R5RS 方案中未加引号的向量

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

我正在尝试编写一个方案解析器作为练习,但我不确定如何实现向量语法。 specification好像说明输入向量的方式是'#(1 2 3)这样一个向量应该评估为 #(1 2 3) .然而,当我在几个 Scheme 实现中进行实验时,#(1 2 3)也被接受为有效输入。这是对规范的普遍实现的扩展吗?

最佳答案

根据 R5RS 规范,必须引用向量:

Note that this is the external representation of a vector, not an expression evaluating to a vector. Like list constants, vector constants must be quoted:

'#(0 (2 2 2 2) "Anna") 


一些实现选择允许评估未引用的向量,但任何此类扩展都是非标准的,并且是该特定实现的“功能”。

对于它的值(value),即将到来的 R7RS spec明确要求向量进行自我评估:

Vector constants are self-evaluating, so they do not need to be quoted in programs.

关于parsing - R5RS 方案中未加引号的向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18641757/

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