Imagen.

Logical operators are the way PitStop uses to refine selections, adding or removing conditions to other selections in the action lists.

They are only used with selections

Logical operators are only used whit selections. Commands to change elements do not need operators as they are executed right away when PitStop finds them.

They use the reverse Polish notation

Logical operators in PitStop action lists are written according to the so-called "Polish Reverse Notation" (PRN) where the operands are placed in front, forming a stack, and the operators are placed behind. The processing of the stack is done in pairs, taking each operator in succession; an example in mathematics:

"(4 + 5 + 6) - 10 = 5" in reverse Polish notation is written: "4 5 6 + + 10 -". Let's see it step by step. We are asking to PitStop: "Take the first two operands of the stack ("4" and "5"), and the first operator ("+"); process them" (result is "9"). "With that result, take the next operand from the stack ("6") and the next operator ("+") and process both" (the result is "15"). "Do the same with this result, the next operand ("10") and the next operator ("-") (the result is "5")". "Do that while you have elements and operators".

As there are no more operands on the stack, the execution of the process is ended and the final result is passed: "5" (here we write the subtraction after the 10 so that we can show how this concept of a stack of operands and operators is applied in mathematics, not because its being essential).

Polish reverse notation

Translated into logic and using PitStop's terms, an example of selection in an action list to select only texts that have a body size of 14 or 22 in Myriad or Times on odd pages would look like this:

Select pages: Odd pages.
Select text segments.
Select according to body: 14 points.
Select according to body: 22 points.
Select according to font: Myriad.
Select according to font: Times.
AND
AND
OR
AND
OR

This reads as follows: "Select all odd pages. from that, select whatever all text segments. From those text segments, select only those with a body size of 14 or 22 points, and from what select only those that use Myriad or Times fonts".

The main reason for the use of inverse Polish notation in programming is that it makes it much easier to work with stacks of elements and it avoids the use of complicated  parenthesis.

They are a very small set

All items (commands and operators) in the PitStop action lists are a closed set. The user cannot add new ones. We have to wait for Enfocus to add (or modify) them in each version of the program.

[ 4 ]