| BEGSR | |||||||||||||||||||||||||||||||
|
The operation has two forms:
The value in arg1 is added to the value in arg2, and the result is placed in arg3, and:
The value in arg1 is added to the value in arg2, and the result is placed in arg2. Examples: Initially the value of AGE is 23. After operation the value of NEW-AGE is 25
After operation of the next statemant AGE has the value of 25.
|
|||||||||||||||||||||||||||||||
| ANDxx |
If used, always in conjunction with the IFxx and DOUxx operations, in that way that the latter conditions are extended through the use of the ANDxx. The values of xx are: EQ (equal) NE (not equal) GT (greater than) LT (less than) GE (greater or equal) LE (less or equal) Syntax.
Example: A certain process may only happen if AGE is greater or equals 18, and INCOME is less then 18000.
|
||||||||||||||||||||||||||||||
| BEGSR |
Opens and starts a subroutine.
Syntax: name BEGSR Name contains a unique name of the subroutine and is used as target of the PERFORM name operation. Example: CHILDHOOD BEGSR Starts the subroutine CHILDHOOD.
|
||||||||||||||||||||||||||||||
| CLOSE |
Closes a data file (which has to be always first opened: see OPEN) Syntax.
Example:
Data file 'Love-affairs' is closed.
|
||||||||||||||||||||||||||||||
| DOUxx |
Begins a 'do until' loop (which is ended by a ENDDO statement). xx stands for: EQ (equal) NE (not equal) GT (greater than) LT (less than) GE (greater or equal) LE (less or equal)
Syntax.
The operands between the DOUxx and the ENDDO are performed until the conditions arg1 and arg2 are satisfied. Example:
An event is performed until AGE is greater than 18. Has AGE initially a value greater than 18 than all operations between DOUxx and ENDDO are skipped and the process continious after the ENDDO-statement.
|
||||||||||||||||||||||||||||||
| ELSE |
When existent, always between the IFxx and ENDIF statement. When the condition specified for the IFxx operand is true , all statements between IFxx and ELSE are operated, else all statements between ELSE and ENDIF are operated. Syntax.
Example: AGE has the value of 16, the IFGT statement is not true so jump to the statement direct following the ELSE: SALARY is increased by 50.
|
||||||||||||||||||||||||||||||
| ENDDO |
Finishes a corresponding DOUxx-loop. Syntax.
|
||||||||||||||||||||||||||||||
| ENDIF |
Finishes a corresponding IFxx. Syntax.
|
||||||||||||||||||||||||||||||
| GOTO |
Forces a jump to a corresponding TAG-statement, skipping all underlying statements. Syntax.
Example:
|
||||||||||||||||||||||||||||||
|
|
Compares arg1 and arg2 under de xx condition. Gives the comparison a outcome true than all the operands between the IFxx and ENDIF (or ELSE) statement are executed. Is the outcome not true than the process succeeded after the ENDIF (or ELSE) statement. xx stands for: EQ (equal) NE (not equal) GT (greater than) LT (less than) GE (greater or equal) LE (less or equal) Syntax.
Example: When AGE has the value of 16 than
all the statements between the IFGT and ENDIF are executed.
|
||||||||||||||||||||||||||||||
| MOVE |
Moves the value of arg1 to arg2. Syntax.
Example: When DAY has initially the value of 29, it has after the MOVE-operation the value of 1.
|
||||||||||||||||||||||||||||||
| OPEN |
Opens a data file. After receiving appropriate data from the file, it must be closed by the CLOSE operand. Syntax.
Example:
Opens the file 'Love-affairs' (obviously a file which contents the names of all your liaisons?).
|
||||||||||||||||||||||||||||||
| ORxx |
If used, always in conjunction with the IFxx and DOUxx operations. Their conditioning is extended through the use of th eORxx operand. The values of xx are: EQ (equal) NE (not equal) GT (greater than) LT (less than) GE (greater or equal) LE (less or equal) Syntax.
Example: A certain process may only happen when AGE is greater or equals 18 or INCOME is less than 18000.
|
||||||||||||||||||||||||||||||
| PERFORM |
Starts a subroutine. Jumps (by simple click on the word PERFORM) immediately to the BEGSR of the corresponding subroutine. After that subroutine has completed, control returns to the statement following the PERFORM operand. Syntax:
Example:
The actual subroutine is temporary left to process the FALL-IN-LOVE subroutine and when the latter is finished, by means of the corresponding RETURN- statement, process continuous with the operation following the PERFORM statement. See diagram below.
|
||||||||||||||||||||||||||||||
| RANDOMIZE |
Gives at random the value *TRUE or *FALSE to a so called logical property. You, as reader, warps a two-sided dice of which one side is marked as *TRUE, and the other as *FALSE. Syntax:
Example:
Puts the value of Y-CHROMOSOME on *TRUE or *FALSE. The choice is to the reader, but the value have to be consequently maintained until a next RANDOMIZE (in this example Y-CHROMOSOME).
|
||||||||||||||||||||||||||||||
| RETURN |
Ends a subroutine and gives control back to the calling subroutine, precisely to the statement following the calling PERFORM. Syntax:
Example:
Clicking on RETURN brings you back to the calling subroutine (i.e. NEW-YORK).
|
||||||||||||||||||||||||||||||
| RUN |
Starts, respectively stops the evolutionary process of life. Syntax:
The value of arg is START or STOP. Example:
Starts, on earthly conditions, some three and a half billion years ago, life. By the way: when an organism is viable, and happens to be that of an average taxpayer, it starts the algorithm of that very average taxpayer.
|
||||||||||||||||||||||||||||||
| SUBTR |
Two forms:
The value in arg2 is subtracted from the value in arg1, and the result is
placed in arg3,
The value in arg2 is subtracted with the value in arg1 and the result is placed in arg2. Example: AGE has the value 23. After operation NEW-AGE has the value of 21.
|
||||||||||||||||||||||||||||||
| TAG |
Always in conjunction with GOTO: a label, signpost, well, just a tag. Syntax:
Example:
GOTO
HEAVEN .........
Skip all in-between lines from GOTO HEAVEN to HEAVEN TAG.
|
©2001 JanBais The Algorithm of an Average Taxpayer's Life The Hague The Netherlands