有谁知道我可以在哪里获得LOGO编程语言的BNF或EBNF?
答案 0 :(得分:12)
在某些情况下,BNF语法可能不太有用......
编写一个与现有/历史实现准确兼容的LOGO并非易事(我在这样的项目上工作)。问题是解析器没有完成整个工作,并且评估器(解释器)必须处理部分数据。考虑这个例子:
proc1 a b proc2 c
根据proc1& amp;参数的数量,它可能意味着proc1(a,b,proc2(c))或proc1(a,b,proc2(),c)。 PROC2。
此外,我知道的LOGO解释器,例如Berkely LOGO,似乎是粗略地看了一眼不要写一个传统的解析器,它还可以访问每个程序及其arity;相反,他们运行程序,程序“吃掉”他们需要的参数数量。这使得解析器有点天真,主要角色是解释器,因此解析有点不寻常。
答案 1 :(得分:2)
没有标准的LOGO实施。
您最好的电话可能是查看常用实现的来源,例如UCBLogo