Go BackREXX Programming

Synopsis
REXX Programming explains the basic principles and practices for coding with TSO/E or VM/CMS REXX, IBM's Restructured Extended Executor Language.

Audience
This course is for data processing and business professionals who will use REXX to program.

Time
6 - 12 hours

Product Code: REX101
After completing this course, the student should be able to:
 
Code basic REXX execs
Use variables, expressions and operators
Include conditional and looping instructions
Utilize the stack
Pass information to and from an exec
Perform comparison, formatting and string manipulating functions
Use compound variables
Employ various ways of parsing
Debug execs using TRACE

Introducing REXX
Introduces you to the REXX programming language and its features.
 
REXX execs
Features and components of REXX.  Recognizing a REXX exec.  Basic syntax rules.
Variables, Expressions and Operators
Assigning names and values to variables.  Using REXX to perform arithmetic calculations.  Precedence of arithmetic operators used in REXX.
More Operators
Using the comparative, logical and concatenation operators.


Basic REXX Instructions
Presents basic REXX instructions.  Explains how to store data on the stack.
 
Writing to the Terminal
Writing to the terminal with a SAY instruction.
Reading from the Terminal
Reading from the terminal with the PULL instruction.  Retrieving data from the command line using the ARG instruction.
Selection Techniques
Controlling the logic flow within REXX by using IF/THEN/ELSE instructions.  Using the NOP instruction.  How to unconditionally leave a REXX exec with the EXIT instruction.
Simple DO Loops
Using simple DO loops.  Adding the LEAVE instruction to terminate a DO FOREVER group.
Stack
Definition of a stack.  Manipulation of the stack using PULL, PUSH and QUEUE.


Program Control
Explores more complex selection techniques and DO structures.  Discusses subroutines and the interrupt instruction SIGNAL.
 
Advanced Selection Techniques
Using SELECT/WHEN/OTHERWISE in a REXX exec.
Complex DO Structures
How to manage controlled repetitive loops.  How to nest loops.  Use of the ITERATE instruction.
Subroutines
Coding simple subroutines in a REXX exec.  Passing data between a calling exec and subroutine.  Using the PROCEDURE instruction with or without the EXPOSE option.
Control Jumps
Using the SIGNAL instruction to alter the flow of program control.


REXX Functions
Covers the three categories of REXX functions.
 
Comparison/Formatting
Calling a function in a REXX exec.  Employing comparison functions: COMPARE and DATATYPE.  Using formatting functions: CENTER, LEFT, RIGHT, COPIES and SPACE.
String Manipulating
Using string manipulating functions: STRIP, SUBSTR, SUBWORD, OVERLAY, LENGTH, WORDS, WORDLENGTH, WORD, WORDINDEX, WORDPOS and POS.

Advanced Program Features
Describes advanced features in REXX programming.
Compound Variables and Arrays
Using compound variables to set up arrays and lists of variables.  Using the stem to change a collection of variables.
The PARSE Instruction
Using PARSE PULL, PARSE VAR and PARSE VALUE in a REXX exec.
Using the Stack
Adding and dropping buffers from the stack.  How PUSH, PULL and QUEUE act on the buffers.  Using QUEUE() to return the number of entries in the stack.
Debugging
Using the TRACE instruction to debug a REXX exec.  Names of TRACE options.


 

Go Back