在编程文档中,双冒号跟等号(:: =)是什么意思?
编程文档中的::=
是什么意思?
例如在Lua文档中: http : //www.lua.org/manual/5.2/manual.html#3.2
或Python文档: http : //docs.python.org/release/2.7.1/reference/lexical_analysis.html#identifiers
它以巴克斯 – 诺尔forms象征“符号推导规则”
意思是在:
<symbol> ::= __expression__
非终结符<symbol>
由(被定义为,构造自,派生自) __expression__
它被用来描述语言语法。
请注意,这两个示例都采用扩展Backus-Naurforms ,但使用传统的BNF符号expression式分隔符( ::=
)。
这是描述语言的Backus-Naur表单 (BNF)表示法。 ::=
在这个上下文中的意思是定义为 。
例如,在您引用的Python语言文档中,标识符定义为字母或下划线,后跟字母,数字或下划线。 这个表示法继续描述一个字母和一个数字被定义为什么,等等。
正如其他人已经说过,这是BNF符号的一部分。 维基百科有一个解释和一些例子 ,我不会在这里重复。
“ ::=
符号本身的历史和演变在“ALGOL努力的历史” (p29以上)中进行了解释。
给定的元素语法。 例如:
identifier ::= (letter|"_") (letter | digit | "_")*
意味着所有的标识符必须符合给定的语法规则。