rams
        | ident arrayIndex ':=' exp
        | ident ':=' exp
        | ident
        | compoundStm
        | IF exp THEN statement elsePart
        | WHILE exp DO statement. 


elsePart ::= ELSE statement | empty.

variable ::= ident arrayIndex.

arrayIndex ::= '[' exp ']'. 

params     ::= ['('], expList, [')'].

expList    ::= exp expLists.

expLists   ::= ',' exp expLists | empty.

exp        ::= simpleExp relExp.

relExp     ::= relOp simpleExp | empty.

simpleExp  ::= sign term addExp.

addExp    