有一种叫做lambda calculus的简单语言,它是方案的一个子集。它在下面只有4个表达式。
exp : n (1 2 3)
varref (variable reference)
(lambda (x) body) (this is a procedure)
(procedure argument) (this is a application which applies argument as real parameter to the procedure)
我正在为这种语言编写一个解释器。 Scheme将lambda表达式更改为scheme方案,我想用一个列表来替换它。谁能给我建议?
答案 0 :(得分:3)
在尝试实现lambda-calculus解释器之前,您应该了解lambda演算。我认为你的第一步是写下lambda-calculus术语的例子,以及他们评估的内容。如果那是困难的事情,请告诉我;互联网上有足够的资源,可以帮助你理解lambda演算的术语以及它们减少的内容。
这是一个看似合理的话:
http://www.cs.bham.ac.uk/~udr/popl/handout1.pdf
与
一起答案 1 :(得分:0)
你能发布一些证明问题的特定代码吗? 也许我在这里完全被误解了,但我认为你应该有某种 读者为您的语言。当你启动它并读取它应该的lambda关键字 打电话给你的“实施”。
查看这篇精彩文章: lispy in chicken