Expressions
Arithmetic, boolean, and bit operations
  1. can use standard C binary operators for equality (= =, !=) (equals, not equal)
  2. arithmetic (+, -, *, /, %) (plus, minus, times, divide, remainder)
  3. boolean (||, & & ) (or, and)
  4. bit operations (|, & , ^, > > , < < ) (bit-or, bit-and, bit-xor, shift-right, shift-left)
  5. unary operators
String Expressions
Strings use only equality (and inequality) operators, but allow for

         < string>  [ == | != ] < string>  
         < string>  [ ~= | !~ ] < pattern> 
File-test predicates
Assignment operators
          =           evaluate RHS and store in LHS
          +=          evaluate RHS and add to current LHS
          -=          evaluate RHS and subtract from current LHS
          *=          evaluate RHS and multiply to current LHS
          /=          evaluate RHS and use to divide current LHS
Assignment
  1. Where the RHS is a constant or a variable expression, it can be assigned to a variable by "set" or "setenv", depending on the type of variable. "set" can also be used to assign a simple RHS to an element of a list.
         set < var>  = ( $< var>  new_entries )
          @ < var>  < op>  < expr>