Backus Naur Form (BNF)
aka Context Free Grammar

Notation:

Example:
   <declaration>   -> <data-type> <variable-list> ;
   <data-type>      -> int |  float |  char
   <variable-list> ->  <one-variable>
                        | <one-variable> , <variable-list>
   <one-variable>  ->  <variable>
                        | <variable> = <value>
   <variable>      -> count | index | num | sum | var
   <value>         -> 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9                        

Deriving Sentence from Grammar: