anchor.diff:          metatypes?
           satisfiedTypes?
           typeConstraints?
  -        interfaceDefinition
  -    ;
  -
  -interfaceDefinition
  -    : interfaceBody | typeSpecifier ';'!
  +        (interfaceBody | typeSpecifier ';'!)
       ;
   
   interfaceBody
  
positive.code:     -> ^(ATTRIBUTE_SETTER memberName block)*/
  
  objectArgument
      : 'object' parameterName objectDefinition
      -> parameterName ^(OBJECT_ARG parameterName objectDefinition)
      ;
  
  voidMethodArgument
      : 'void' parameterName voidMethodArgumentDefinition
      -> parameterName ^(METHOD_ARG 'void' parameterName voidMethodArgumentDefinition)
      ;
  
  voidMethodArgumentDefinition
      : formalParameters+ block
      ;
  
  methodArgumentDefinition
      : formalParameters+ memberBody
      ;
      
  typedMethodOrGetterArgument
      : inferrableType parameterName
      ( 
        methodArgumentDefinition
      -> parameterName ^(METHOD_ARG inferrableType parameterName methodArgumentDefinition)
      | memberBody
      -> parameterName ^(ATTRIBUTE_ARG inferrableType parameterName memberBody)      
      )
  
negative.code:         extendedType?
          satisfiedTypes?
          typeConstraints?
          (classBody | typeSpecifier? ';'!)
      ;
  
  classBody
  