在大学里,他们让我使用语法和下推自动机来检查一部分Java代码的语法。由于我之前没有使用过这个自动机,我已经了解了它们的工作方式,我认为这个自动机在检查代码语法方面不是很有用,因为下推自动机用于验证任何令牌之间有一定比例的语法比如“0 ^ n 1 ^ 2n | n> = 0”。
令牌之间的比例在代码语法中不存在,因此我认为下推自动机在这种情况下没用。
答案 0 :(得分:0)
非确定性下推接受者(NPDA)和上下文无关语法(CFG)在表示语言方面具有相同的权力。
由于大多数(如果不是全部)编程语言(如java)语法可以由CFG呈现,它也可以由NPDA呈现。
所以,没有抱怨,做任务。