anchor.diff:  
   //a functor expression that can appear as the RHS of an 
   //assignment, in an argument list, or in parens
  -assignableFunctor 
  +functor 
       : functorHeader? formalParameters functorBody
       ;
   
   //a functor expression that can appear inside an expression
  -//or as a method argument without the need for parens
  -primaryFunctor 
  +//without the need for parens
  +/*primaryFunctor 
       : functorHeader? formalParameters block
  -    ;
  +    ;*/
   
   //shortcut functor expression that makes the parameter list 
   //optional, but can appear only using the special smalltalk
  
positive.code:     : declarationModifier | userAnnotation
      ;
  
  userAnnotation 
      : annotationName ( arguments | literal | reflectedBase (reflectedMember)* )?
      ;
  
negative.code:     | 'extension'
      ;
  
  //Even though it looks like this is non-associative
  //assignment, it is actually right associative because
  //assignable can be an assignment
  statement 
      : expression ';'
      | controlStructure
      ;
  
  