anchor.diff:          typeName
           typeParameters?
           formalParameters
  +        extraFormalParameters
           extendedType?
           satisfiedTypes?
           typeConstraints?
  
positive.code: // enforce the rule that the ... appears at the end of the parapmeter
  // list in a later pass of the compiler.
  formalParameter
      : annotations? formalParameterType parameterName formalParameters*
        ( '->' type parameterName | '..' parameterName )? 
        specifier?
      ;
  
  formalParameterType
  
negative.code:     ;
  
  memberParameters
      : typeParameters? formalParameters+ extraFormalParameters typeConstraints?
      ;
  
  //TODO: should we allow the shortcut style of method
  