web-dev-qa-db-ja.com

プログラミングドキュメントで、二重コロンの後に等号(:: =)が続くとどうなりますか?

プログラミングドキュメントでの::=の意味?
Luaドキュメント :または Pythonドキュメント

51
Charles Holbrow

Backus–Naur Form で「シンボル導出規則」を記号化します

その意味:

<symbol> ::= __expression__ 

非終端記号<symbol>は、以下から構成されます(として定義され、から構成される、から派生)__expression__

言語文法を記述するために使用されます。

両方の例が Extended Backus–Naur Form であることに注意してください。ただし、従来のBNFシンボル式セパレーター(::=)。

41
soulcheck

これは、言語を記述する バッカスナウル形式 (BNF)表記です。 ::=この文脈での意味は、として定義されていることを意味します。

たとえば、参照しているPython言語のドキュメントでは、識別子文字またはアンダースコアとして定義され、次に、文字、数字、またはアンダースコアが続きます。表記は、文字と数字がどのように定義されているかを説明するために続きます。

12
martineg

他の人がすでに言ったように、それはBNF表記法の一部です。ウィキペディアには 説明といくつかの例 があり、ここでは繰り返しません。

::=シンボル自体の歴史と進化については、 The History of the ALGOL Effort (p29以降)で説明しています。

4
NPE

指定された要素の構文。例えば:

identifier ::=  (letter|"_") (letter | digit | "_")*

すべての識別子が特定の構文規則に準拠している必要があることを意味します。

3
m0skit0