1
语言与quote`-`eval`的上下文等价性是微不足道的吗?
在[1]中,米切尔·旺德(Mitchell Wand)证明了在纯lambda演算中添加fexprs会使语境对等理论变得微不足道,这意味着如果两个词是 -congruent,则它们在语境上是等同的。在探索相关工作时,他认为“我们的结果扩展了对阿尔伯特·梅耶[2]的古老观察,并使得上下文对等变得微不足道”。但是参考[2],只能找到Meyer的以下陈述:αα\alphaevalquote 我第一个想到的是与语言quote- eval功能,如LISP [3]有语法和可执行的对象之间没有区别类型。实际上quote- eval在LISP中看起来已经足够安全了,因为尽管从quote句法上来说cond,它看起来像是一个真正的运算符,例如say ,但它实际上并不像一个运算符(它只有在解析时有行为,在运行时才有行为,例如,一个人不能通过quote作为过程的参数)。不过,我还没有看到令人信服的示例,其中quote- eval功能值得。 不管这些注释中有哪一个小缺陷,都可能误导读者以为cond可以将其作为参数传递给过程。如果我理解正确,那么迈耶所说的“ quote- eval似乎足够安全”意味着quote- eval尽管他没有提供证明,但可能不会使方程式理论变得微不足道。 编辑: 正如Martin所建议的那样,由于所有三篇论文都引用了有关LISP家庭语言的内容,因此让我们将这个问题放在相同的背景下。 在地球上,带有quote- 的语言eval(特别是LISP)的上下文对等是否微不足道? [1]米切尔· 旺德(Mitchell Wand),《 Fexprs理论不重要》。Lisp和符号计算10(3):189-199(1998)。 [2] Albert Meyer, “正式软件开发的编程逻辑研讨会”之谜。1984年 [3] John McCarthy,符号表达式的递归函数及其通过机器的计算,第一部分。1960年4月ACM的通讯。