我在这里查看了 EBNF 的 ISO 规范 pdf (除了在 ISO 网站上,我找不到官方的,它似乎要花钱),我不太了解空格。
有谁知道官方标准是否允许元标识符中有空格?根据标准文档(第 8.1 节)中的元标识符,我会说不,但是如果您看一下同一标准文档中的相同示例,它似乎会说是。
在该文档 8.1 顶部的评论中,似乎是说它正在使用自身定义 EBNF。我对此感到困惑的是这样的行:
meta identifier = letter, {letter | decimal digit}
(* A <meta identifier> is the name of a
syntactic element of the language being
defined *);
元标识符本身应该是一个元标识符,但据我所知,它不适合元标识符(字母然后是任何数量的数字或字母)。
有谁知道发生了什么?