Those last free moments of the weeks may be used in drooling over virtual catalogues instead of pondering the meaning of life. The syntactic structures of programming languages are often defined with context-free grammars, which can be presented as syntax diagrams, for example. Context-free grammars are easy to transform into syntax diagrams from other presentation methods, and vice versa . The classes T and S are also called nonterminals . Each path through the syntax diagram, from the entering arrow to the exiting one, forms a series of consecutive boxes and circles.
Circles contain a terminal , i.e. a part of the language to be defined.
Boxes contain nonterminals , meaning the processing of the syntax diagram corresponding to that nonterminal. In BNF, the nonterminals have a capital initial letter. In the second example, the syntax diagram in Figure 2 defines a Term. Term , Factor , Constant and Variable are nonterminals. An example of the syntax diagram defining Term.