【发布时间】:2012-11-21 16:48:15
【问题描述】:
我有一套在球拍中实施的推导规则。我们可以假设没有任何 optional ,这意味着没有包含管道的规则(在 BNF 中): ::= |
在球拍中,我有这样的东西:
(define *rules*
'((S . ("b" "a"))
(B . ("a"))
(C . (S B))))
请注意,终结符号以球拍字符串的形式实现,非终结符号以球拍符号的形式实现。现在,我想从另一个包含 backus naur 语法规则的球拍文件中导入此规则:
S ::= ba
B ::= a
C ::= SB
(大写字母 = 非终结符)
因此,我需要扩展球拍语法。我不知道如何处理。你能帮助我吗?它不应该有那么多代码......
【问题讨论】: