anchor.diff:  constant_declaration : attributes? declaration_modifiers? 'let' pattern_initializer_list  ;
   pattern_initializer_list : pattern_initializer (',' pattern_initializer)* ;
   
  -/** rule is ambiguous. can match "var x = 1" with x as pattern and 1 as initializer
  - *  OR with x = 1 as pattern where the pattern is a expression_pattern.
  +/** rule is ambiguous. can match "var x = 1" with x as pattern
  + *  OR with x as expression_pattern.
    *  ANTLR resolves in favor or first choice: pattern is x, 1 is initializer.
    */
   pattern_initializer : pattern initializer? ;
  
positive.code: 
  binary_expression
    : binary_operator prefix_expression
    | assignment_operator try_operator? prefix_expression
    | conditional_operator try_operator? prefix_expression
    | type_casting_operator
    ;
  
negative.code: 
  statements : statement+ ;
  
  /** A naked '=' op is not part of a valid expression so I'm making it a statement;
   *  see comment on binary_expression.  It also resolves ambiguity between
   *  rule pattern's expression_pattern alt and pattern_initializer.
   */
  assignment_statement
   : try_operator? prefix_expression  assignment_operator try_operator? prefix_expression
   ;
  
  // GRAMMAR OF A LOOP STATEMENT
  
  loop_statement : for_statement
  