Preface Intro What is REXX? What do I need to get started? Fundamentals Your first REXX script A REXX comment Literal Strings (and Concatenation) Special characters Numeric Strings Math Expressions and Operators Precedence Precision Variables (assigning values) Getting input Terminating a REXX script An example script Notes about formatting Comparisons and Decisions Making a comparison/decision ELSE keyword SELECT keyword Multiple instructions within a conditional (ie, DO/END) Nested conditionals NOP (no operation) keyword Strict (exact) comparison Boolean comparisons (ie, combining expressions) Variable Arrays Stem/compound variables Loops Loops Repeat a set number of times Repeat until a condition is met Prematurely ending a loop Functions (non-REXX) Functions Operations upon words Operations upon strings Math operations Conversions Files and Directories Error/Debug System Information Args/Variables Data stack External Functions Miscellaneous Parsing Breaking data into separate pieces VAR Using search strings (to break apart tokens) Throwing away pieces Parse at particular character positions VALUE ARG SOURCE PULL LINEIN VERSION Data stacks PUSHing, QUEUEing, and PULLing Multiple stacks Buffers/Buffer markers REXX Functions/Subroutines Labels (ie, marking a place in your script), and jumping there Writing REXX Functions/Subroutines PROCEDURE (ie, different set of variables for a Function versus the rest of the program) Functions in a separate script Issuing commands to Environments An environment Running executables/shell commands Errors Handling errors that REXX reports SYNTAX NOTREADY NOVALUE HALT ERROR FAILURE Built-in Debugger (Tracing)Miscellaneous topics INTERPRET instruction Converting between numeric bases OPTIONS instruction (optional features) Registry keys
Errata About this book