anchor.diff:                       |  TOKNOTEQUAL  nterm<<V>>
                        |  AMPER  nterm<<V>>
                        |  AMPERAMPER  assign_value
  -#nterm<<V>>
                        |  AMPERAMPERAMPER  nterm<<V>>
                        |  BAR  nterm<<V>>
                        |  BARBAR  nterm<<V>>
  
positive.code: 
      rule variable_assignment_or_call:
          term<<[]>>
          ( EQUAL assign_value SEMICOLON
          | LEQ assign_value SEMICOLON
          | SEMICOLON
          )
  
      rule if_statement:
          TOKIF LPAREN assign_value RPAREN
  
negative.code:         ( VAR
          | LBRACE VAR (COMMA VAR)* RBRACE
          )
          ( EQUAL | LARROW ) assign_value SEMICOLON
  
      rule enum_element: term<<[]>> [EQUAL expression]
  
      rule deriving_type_class:
          TOKEQ | TOKBITS | TOKBOUNDED
  
      rule deriving_clause:
          TOKDERIVING  LPAREN deriving_type_class ( COMMA deriving_type_class )* RPAREN
  
      rule struct_arg:
          [ TOKNUMERIC | TOKPARAMETER ] TOKTYPE VAR
  
      rule struct_arg_list:
            VAR
          | interfaceTypesub
  
      rule instance_arg:
          Type_nitem | NUM
  
      rule typedef_declaration:
          TOKTYPEDEF 
  