anchor.diff:          classBody
       ;
   
  +//TODO: refactor, sucking instances into declarationOrStatement,
  +//      to eliminate the backtracking. Or begin the instance list
  +//      with a keyword
   classBody
       : '{' ((instanceStart)=>instances)? declarationOrStatement* '}'
       ;
  
positive.code: //Note that = is not really an assignment operator, but 
  //can be used to init locals
  expression 
      : methodExpression 
        ( ('=' | ':=' | '.=' | '+=' | '-=' | '*=' | '/=' | '%=' | '&=' | '|=' | '^=' | '&&=' | '||=' | '?=') assignable )?
      ;
  
  methodExpression
      : implicationExpression undelimitedNamedArgument*
      ;
  
  undelimitedNamedArgument
      : ( memberName | 'case' '(' expressions ')' ) 
        undelimitedNamedArgumentDefinition 
      ;
      
  implicationExpression
  
negative.code: selector 
      : member
      | arguments
      | undelimitedNamedArgument
      | elementSelector
      | ('--' | '++')
      ;
  