Search code examples
language-agnosticsymbols

What does a double colon followed by an equals sign (::=) mean in programming documentation?


What does ::= mean in programming documentation?
For example in the Lua documentation: or in Python documentation.


Solution

  • It symbolizes 'symbol derivation rule' in Backus–Naur Form

    Meaning that in:

    <symbol> ::= __expression__ 
    

    nonterminal <symbol> consists of (is defined as, is constructed from, derives from) __expression__

    It's used to describe language grammars.

    Notice that both examples are in Extended Backus–Naur Form, but using a traditional BNF symbol-expression separator (::=).