Semantics : FormalParameters

FormalParameters  ::=  ( ( )? ( .. | ( IDENTIFIER ( = Expr )? ),+ ( , .. )? )? ( ) )?

Used by:  

Parameter definition is used in function and thread declaration. Parameters are variable names separated by commas. Variables may have initializers, which can be constant values or expressions (such as date()).

Functions and threads can be invoked/started with different number of parameters than declared. If fewer, the uninitialized parameters are null 's. If more, the extra parameters beyond the declared ones are accessed via the predefined array variable, !!args .

To emphasize the fact that a function or thread takes variable number of parameters, end the parameter list with .. . It does not do anything other than serving as an indicator.