NAME
       set - Read and write variables

SYNOPSIS
       set varName ?value?


DESCRIPTION
       Returns the value of variable varName.  If value is speci-
       fied, then set the value of varName to value,  creating  a
       new  variable if one doesn't already exist, and return its
       value.  If varName contains an open parenthesis  and  ends
       with  a close parenthesis, then it refers to an array ele-
       ment:  the characters before the  first  open  parenthesis
       are  the name of the array, and the characters between the
       parentheses are the index  within  the  array.   Otherwise
       varName  refers  to a scalar variable.  If no procedure is
       active, then varName refers to a global  variable.   If  a
       procedure is active, then varName refers to a parameter or
       local variable of the procedure unless the global  command
       has been invoked to declare varName to be global.


KEYWORDS
       read, write, variable
