anchor.diff:      INT;
   
   creation:
  -    (pakage=qualifiedId POINT)? name=TID LPAREN (params+=actualParam (COMMA params+=actualParam)*)?  RPAREN ;
  +    (pakage=qualifiedId POINT)? name=TID LPAREN (params+=actualParam (commaNl params+=actualParam)*)?  RPAREN ;
   
   varDecl :
       VAL_KW (type=typeUsage)? name=ID ASSIGNMENT value=expression nls;
  
positive.code:     | primitiveType = PRIMITIVE_TYPE
      | basicType = BASIC_TYPE;
  
  // method definition
  
  methodDefinition:
      type=returnType name=ID LPAREN (params+=formalParam (COMMA params+=formalParam)*)? RPAREN methodBody;
  
  returnType:
      isVoid=VOID_KW | type=typeUsage;
  
negative.code:     ;
  
  invokation:
      function=basicExpression LPAREN (params+=actualParam (commaNl params+=actualParam)*)?  RPAREN ;
  
  fieldAccess:
      subject=basicExpression POINT name=ID;
  