• infix (with arguments on either side, such as + in 3 + 4, or = in a = 7)
 • prefix (with one argument on its right side, such as !a for logical negation)
 • or postfix (with one argument on its left side, such as a++ for incrementing a
`Net Income After Taxes = Net Income - Taxes;`
`Assign( Net Income After Taxes, Subtract( Net Income, Taxes ) );`
The assignment operation can be written either as the Assign() function or as an infix operator =. Similarly, subtraction can be done with the Subtract() function or the infix minus sign; they are equivalent inside JMP.
 Note: Usually white space is ignored in JSL, so that “netincomeaftertaxes” and “net income after taxes” are the same thing. There is one exception: the two-character operators must not have a space between characters. Always enter the following operators without spaces in between: `||, |/, <=, >=, !=, ==, +=, -=, *=, /=, ++, --, <<, ::, :*, :/, /*, */`
Another common operator is the semicolon ( ; ). You use the semicolon to:
 •
 • End an expression. Though the semicolon is permitted at the end of an expression, it is not the expression terminator used in other languages.
`a + b * c`
So b * c is evaluated first, and then the result is added to a.
+ takes precedence over -:
`a + b * c - d`
So b * c is evaluated, and then the result is added to a. d is then subtracted from the result of a + b * c.
Table 4.3 shows operators shaded in order of precedence and each operator’s function equivalent.
 Operator Function Syntax Explanation `{ }` `List` `{a,b}` `List(a,b)` Construct a list. `[ ]` `Subscript` `a[b,c]` `Subscript(a,b,c)` Subscripts identify specific elements within a data element a, where a could be a list, a matrix, a data column, a platform object, a display box, and so on. `++` `Post Increment` `a++` `Post Increment(a)` Adds one (1) to a, in place. JMP does not have a pre-increment operator. Instead, use the Add To() operator, which is (+=). `– –` `Post Decrement` `a– –` `Post Decrement(a)` Subtracts one (1) from a, in place. JMP does not have a pre-decrement operator. Instead, use the Subtract To() operator, which is (-=). `^` `Power` `a^b` `Power(a,b)` `Power(x)` Raise a to exponent power b. With only one argument, 2 is assumed as the power, so Power(x) computes x2. `–` `Minus` `–a` `Minus(a)` `!` `Not` `!a` `Not(a)` Logical Not. Maps nonzero (or true) values to 0 (which means false). Maps 0 (or false) values to 1 (which means true). `*` `Multiply` `a*b` `Multiply(a,b)` Multiplies a by b. `:*` `EMult` `a:*b` `EMult(a,b)` Elementwise multiplication for matrices a and b. (Each element in matrix a is multiplied by each element in matrix b.) `/` `Divide` `a/b` `Divide(a,b)` `Divide(x)` Divide(a, b) divides a by b. Divide(x) interprets the argument as a denominator and implies 1 as the numerator, yielding the reciprocal 1/x. `:/` `EDiv` `a:/b` `EDiv(a,b)` Elementwise division for matrices a and b. (Each element in matrix a is divided by each element in matrix b.) `+` `Add` `a+b` `Add(a,b)` Adds a and b. `–` `Subtract` `a–b` `Subtract(a,b)` Subtracts b from a. `||` `Concat` `a||b` `Concat(a,b)` Joins two or more strings; two or more lists; and horizontally concatenates matrices. See Concatenate Lists in Data Structures or the JSL Syntax Reference for details. `|/` `VConcat` `matrix1|/matrix2` `VConcat(matrix1, matrix2)` Vertically concatenate matrices. (Use || or Concat() to horizontally concatenate matrices.) `::` `Index` `a::b` `Index(a,b)` (Colons are also used as prefix operators for scoping, where :a means data table column a, and ::a means JSL global variable a. See Scoping Operators for details.) `<<` `Send` `object << message` `Send(object, message)` Send message to object. `==` `Equal` `a==b` `Equal(a,b)...` Boolean values for comparisons. They all return 1 if true, 0 if false. Missing values in either a or b causes a return value of missing, which evaluates as neither true nor false. See Missing Values, for treatment of missing values. `!=` `Not Equal` `a!=b` `Not Equal(a,b)...` `<` `Less` `a` `Greater` `a>b` `Greater(a,b)` `>=` `Greater or Equal` `a>=b` `Greater or Equal(a,b)` `<=, <` `Less Equal Less` `a<=b

Help created on 7/12/2018