anchor.diff:      ((interpolatedExpressionStart) => expression SIMPLESTRINGLITERAL)+
       ;
   
  -//special rule for syntactic predicates
  +//special rule for syntactic predicate
  +//to distinguish an interpolated expression
  +//in a string template
   //this includes every token that could be 
   //the beginning of an expression, except 
   //for SIMPLESTRINGLITERAL and '['
  
positive.code:       )
      ;
  
  declarationStart
      : declarationKeyword 
      | type '...'? LIDENTIFIER
  
negative.code:     -> ^(PARAM_LIST ^(PARAM extraFormalParameter)+)
      ;
  
  //special rule for syntactic predicate
  //to distinguish between a formal 
  //parameter list and a parenthisized body 
  //of an inline callable argument
  //be careful with this one, since it 
  //matches "()", which can also be an 
  //argument list
  