有谁知道我在哪里可以获得LOGO编程语言的 BNF 或 EBNF?
问问题
3194 次
2 回答
13
BNF 语法在某些情况下可能不太有用……
编写与现有/历史实现准确兼容的 LOGO 并非易事(我曾从事过这样的项目)。问题是解析器没有完成全部工作,而评估器(解释器)必须处理部分数据。考虑这个例子:
proc1 ab proc2 c
根据 proc1 和 proc2 的参数数量,它可能意味着 proc1(a, b, proc2(c)) 或 proc1(a, b, proc2(), c)。
此外,我所知道的 LOGO 解释器,例如 Berkely LOGO,粗略一看,似乎并没有编写一个传统的解析器,该解析器还可以访问每个过程及其数量;相反,他们运行程序并且程序“吃掉”了他们需要的参数数量。这使得解析器有点幼稚,主要角色是解释器,因此解析有点不寻常。
于 2011-07-25T21:02:25.633 回答
3
没有标准的LOGO实现。
您最好的电话可能是查看流行实现的源代码,例如UCBLogo
于 2011-07-25T21:20:29.367 回答