anchor.diff:  //that distinguish declarations from
   //expressions
   declarationStart
  -    : declarationKeyword 
  -    | type ELLIPSIS? LIDENTIFIER
  -    ;
  -
  -declarationKeyword
       : VALUE_MODIFIER
  -    | FUNCTION_MODIFIER
  +    | FUNCTION_MODIFIER LIDENTIFIER //to disambiguate anon functions
       | ASSIGN
       | VOID_MODIFIER
       | INTERFACE_DEFINITION
       | CLASS_DEFINITION
       | OBJECT_DEFINITION
  -    | ALIAS
  +    | ALIAS 
  +    | type ELLIPSIS? LIDENTIFIER
       ;
   
   statement returns [Statement statement]
  
positive.code:     | selfReference
      | nonstringLiteral
      | prefixOperatorStart
      ;
  
  prefixOperatorStart
  
negative.code:         { fa.addParameterList($p2.parameterList); }
        )*
        COMPUTE?
        e1=functionOrExpression
        { fa.setExpression($e1.expression); 
          $expression = new Expression(null); 
          $expression.setTerm(fa); }
  