用于LOGO编程语言的EBNF或BNF

时间:2011-07-25 16:43:01

标签: bnf ebnf logo-lang

有谁知道我可以在哪里获得LOGO编程语言的BNF或EBNF?

2 个答案:

答案 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