Macros do not require explicit dereferencing of arguments (i.e., \ARG).
During macro expansion, the macro parameters are converted to subsyms. If the number of arguments passed the macro invocation exceeds the number of parameters defined, the last parameter is assigned the string equivalent of all remaining arguments. If fewer arguments are given than parameters, the missing parameters are assigned empty strings. To include a comma in an argument, you must enclose the argument in quotes.
The following built-in subsym functions allow examination of the string value of subsyms (or ordinary strings). The arguments are strings unless otherwise indicated (subsyms passed as args will be replaced by the strings they represent).
$symlen(
str)
$symcmp(
str1,
str2)
$firstch(
str,
ch)
$lastch(
str,
ch)
$isdefed(
symbol)
$ismember(
symbol,
list)
$iscons(
expr)
$isname(
name)
$isreg(
reg)
$structsz(
stag)
$structacc(
stag)