答案 0 :(得分:4)
下面是我要求更改以获得更好性能的一些更改
1)使语法保留递归规则。这在制作移位减少操作方面更好,因为黄金解析器是一个移位减少LR解析器。
SectionList :: = Section
| SectionList Section
PropertyList :: = Property
| PropertyList Property
2)以下部分中的第三条规则强制您仅在分区列表之前具有属性列表,而不是在不同分区之间。根据要求确定它
SectionBody :: = PropertyList
| SectionList
| PropertyList SectionList
如果需要,我可以更好地帮助你,如果你让我知道“它应该接受这个,不应该接受这个”的语言,而不是一个不能100%描述你的语言的样本输入。或者让我知道您认为我们可以定义语言描述的错误。
此致 V M Rakesh(rakesh.vm@gmail.com)