anchor.diff:  NULL : 'null' ;
   THIS : 'this' ;
   NEW  : 'new' ;
  +BOOL_TYPE : 'boolean';
  +INT_TYPE : 'int';
   
   // Types
   INT   : NONZERODIGIT DIGIT* | '0' ;
  
positive.code: classVarDecl : type ID ';' ;
  methodDecl : 'public' type ID ('(' (formal (',' formal)*)? ')' | '()') '{' (stmt)* 'return' expr ';' '}' ;
  formal : type ID;
  type : 'int' | 'boolean' | ID ;
  stmt :
        varDecl
      | block
  
negative.code: print : 'System.out.println' '(' expr')' ';' ;
  assigment : ID  '=' expr ';' ;
  
  expr : logicalOr exprPrime ;
  
  exprPrime: DOT ID LPAREN expr (COMMA expr)* RPAREN exprPrime
      | /* epsilon */ ;
  
  logicalOr :
        logicalAnd OR logicalOr
  