Eventually, this API will abstract CPU vs GPU-based affine transforms
for the best performance.

Used to populate or mathematically modify an POGL array.
Uses Reverse Polish Notation (RPN) for mathematical operations.

calc maintains a push/pop stack and a "register" for each column.

- Logical "Not" for End of Stack (S0) for the current column; becomes 1.0 if empty or 0. otherwise 1.0
- Arithmetic Negation of S0

- Add S0 and Next on Stack (S1), pop operands and push result (Result)

- Multiply S0 and S1; Result

- Divide S1 by S0; Result

- S1 Modulus S0; Result

- Test S0 equality to S1; pop operands and push non-zero (1.0) for true, otherwise 0.0 (Boolean)

- Test if S0 Greater than S1; Boolean

- Test if S0 Lesser than S1; Boolean

- If S0 is true (non-zero), pop S0 and S1; otherwise pop s0-3, push s1

- Pop s0

- Push a random number from 0.0 to 1.0

- Push a copy of S0

- Swap values of S0 and S1

- Pop S0 and store it's value in the column's Register

- Push the column's Register onto the column's Stack

- Pop S0, and copy the values of row S0 of the array into their respective column Registers

- Pop S0, and copy the values in the current registers into row S0 of the array

- End processing; column unchanged

- Pop S0, End if true; column unchanged

- End processing of current row; column unchanged

- Pop S0, End processing of current row if true; column unchanged

- End processing; column value set to s0

- Pop S0, End if true; column value set to s0

- End processing of current row; column value set to s0

- Pop S0, End processing of current row if true; column value set to s0

- alias to

- alias to

- alias to

- Add 1 to S0

- Subtract 1 from S0

- Add and pop everything in stack; push result

- Average and pop everything in stack; push result

- Replace S0 with its absolute value

- Raise S1 to the power of S0; Result

- The lower of S0 and S1; Result

- The higher of S0 and S1; Result

- Sine of S0 in Radians; Result

- Cosine of S0; Result

- Tangent of S0; Result

- ArcTangent of S1 over s0; Result

- Push the number of elements in the array

- Push the current element index (zero-based)

- Push the number of columns in the array

- Push the current column index

- Push the number of rows in the array

- Push the current row index

- Push the the value of PI