anchor.diff:        | typeDeclaration 
         -> ^(TYPE_DECL typeDeclaration annotations?)
       )
  -/*    (((memberHeader memberParameters) => 
  -            (mem=memberDeclaration 
  -                -> ^(METHOD_DECL $mem $ann?)))
  -    | (mem=memberDeclaration 
  -            -> ^(MEMBER_DECL $mem $ann?))
  -    | (typ=typeDeclaration 
  -            -> ^(TYPE_DECL $typ $ann?))
  -    | (inst=instance
  -            -> ^(INSTANCE $inst $ann?)))*/
       ;
   
   //special rule for syntactic predicates
  
positive.code:     ;
  
  classBody
      : '{' declarationOrStatement* '}'
      -> ^(BLOCK declarationOrStatement*)
   //    -> ^(CLASS_BODY ^(STMT_LIST $stmts))
      ;
  
  
negative.code:     | 'interface' 
      | 'class' 
      | 'object'
      ;
  
  //Note that this rule is way too permissive,
  