[英]Are there any modification of BNF with parameters
我的意思是
LISTOF(EL) := "[" EL ("," EL)* "]"
LISTNUM := LISTOF(NUMBER)
LISTID := LISTOF(IDENT)
因此,带有定义
NUMBER := ('0'-'9')*
IDENT := ('a'-'z'|'A'-'Z')*
我们有以下
[435,657,44]
是LISTNUM
例子,
[dsf,thg,ewre]
是LISTID
例子。
或另一个示例(e表示空字符串)
A(0) := e
A(n) := "a" A(n-1) | e
因此,A(5)由所有长度不超过5的'a'组成的集合
是否有任何科学著作描述了类似的东西? 我们能否以这种方式描述语法,并且仍然能够在可接受的时间内对其进行解析?
常用的元语法(例如Bnf,Abnf和Ebnf)没有参数化规则。 但是,根据标准,Iso Ebnf是可扩展的。 如果我没记错的话,该标准实际上显示了引入参数的示例。
你可以得到标准在这里是免费的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.