# Expressions

An expression is a value (a constant, a

predefined constant, a variable or the result of a function), which may optionally be preceded by certain operators depending on the type of value, followed by an operator and another value, and so on.

**For numeric expressions:**
{ `number`

| `constant`

| `numeric function`

| `numeric variable`

} [ `operator`

[ `sign`

] { `number`

| `numeric function`

| `numeric variable=} ... ]`

__number__ : a standard number

__constant__ : a constant that represents a numeric value

__numeric function__ : a user-defined or

Intrinsic Functions that returns a numeric value

__operator__ : any of the standard [/cat/arithop|arithmetic operators] (

**+**

**-**

*****

**/**

**^**

**\**

`lang/div`

`lang/mod`

plus

`AND`

`OR`

or

`XOR`

)

__numeric variable__ : any variable whose value is a number

**For string expressions:**
{ `string`

| `string constant`

| `string function`

| `string variable=} [ & { =string`

| `string constant`

| `string function`

| `string variable=} ... ]`

__string__ : a set of zero or more characters surrounded by "

__string constant__ : a

predefined constant that represents a string value

__string function__ : a user-defined or

Intrinsic Functions that returns a string value

__string variable__ : any variable whose value is a string

__&__ : indicates that the string value to the right of the ampersand is to be concatenated to the end of the value to the right of the ampersand

**For boolean expressions:**
[ `[/lang/not]`

] { `TRUE`

| `FALSE`

| `numeric constant`

| `boolean constant`

| `boolean function`

| `boolean variable`

} [ `boolean operator`

[ `NOT`

] { `TRUE`

| `FALSE`

| `numeric constant`

| `boolean constant`

| `boolean function`

| `boolean variable`

} ... ]

__NOT__ : using

`NOT`

before a boolean value reverses the value

__TRUE__ or

__FALSE__ : the standard boolean constants

__numeric constant__ : a

/edit/cat/number|standard number which will be resolved to either

`TRUE`

or

`FALSE`

^{[1]}
__boolean constant__ : a

/edit/cat/constant|predefined constant that represents a boolean value

__boolean function__ : a user defined or

Intrinsic Functions that returns

`TRUE`

or

`FALSE`

or resolves to

`TRUE`

or

`FALSE`

^{[1]}
__boolean variable__ : any variable whose value is

`TRUE`

or

`FALSE`

or resolves either to

`TRUE`

or

`FALSE`

^{[1]}
__boolean operator__:

`AND`

`OR`

`XOR`

**=**

**<>**

**<**

**>**

**<=**

**>=**

Note that if the expression consists of a number with the operator

AND,

`OR`

, or

`XOR`

followed by a number, it will be treated as an arithmetic expression rather than a boolean expression. At least one of the values in the expression must be a boolean value to produce a boolean expression.

^{[1]}Note that a

/edit/cat/number,

/edit/cat/constant|predefined constant,

/edit/cat/arith|arithmetic function or numeric variable may be used as a boolean value. If the value of a number, numeric constant, numeric function, or variable is used in a boolean expression is zero, it resolves to

`FALSE`

; all other numeric values used in a boolean expression resolve to

`TRUE`

.

### See also