#set TITLE = "setting variables"
#include top

.SH #set
.LP
\fC#set  \fIvariable\fC  =  \fInumeric\fR
.br
\fC#set  \fIvariable\fC  =  "\fItext\fC"\fR
.br
\fC#set  \fIvariable\fC  =  $\fIfunction\fR
.LP
Assigns a value to a 
#set FILE = "variables.html"
#set TAG = "QUISP variable."
#include link
The value may be a constant or a variable, and
may be a numeric, alphanumeric/text, or 
#set FILE = func.html
#set TAG = function
#include link
result.
Alphanumeric/text literals should be enclosed in double quotes,
although the parser is lenient and quoting is only really required 
when the constant contains whitespace.
Whitespace must follow the \fC#set\fR, the \fIvariable\fR, and the equals sign (=).
Multiple alphanumeric variables or constants may be used on the right hand side, resulting
in concatenation, however they must be separated by whitespace.
.LP
Examples:
.LP
.nf
\0#set COUNT = 0
\0#set LABEL = "My favorite martian"
\0#set LABEL = @A @B        
\0#set LABEL = @A ", " @B        
\0#set TODAY = $todaysdate()
\0#set TOTAL = $arith(@X+@Y+@Z)     
.fi

#include space2

.SH #setifnotgiven
.LP
\fC#setifnotgiven  \fIvariable\fC  =  \fIvalue\fR
.LP
Similar to \fC#set\fR
except that it takes action only if \fIvariable\fR is empty ("") or 
has never been assigned a value.  Useful in assigning a default value to 
optional passed variables.
.br
Example: \fC#setifnotgiven CUTOFF = 0.5\fR

#include space
.SH See also
#set FILE = "sql.html"
#set TAG = "#sqlblankrow."
#include link

#include bottom
