What is REXX?
REXX was developed at IBM by Mike Cowlishaw. REXX is a computer programming language that’s easy to learn and use because it was designed for humans and not computers! It is largely based on PL/I. Cowlishaw’s original intention was to develop a language similar to PL/I, but easier for beginners and non-programmers to grasp. Since its creation Rexx has been extended and implemented on many platforms in different ways.
REXX is a language that is extremely versatile. Aspects such as common programming structure, readability, and free format make it a good language for beginners and general users. Yet because the REXX language can be intermixed with commands to different host environments, provides powerful functions and has extensive mathematical capabilities, it is also suitable for more experienced computer professionals.
REXX has many flavors since its inception, however, this is a Forum for Mainframe-programmer so the inclination would be towards that. Siad that, TSO/E implementation of the REXX language allows REXX execs to run in any MVS address space. You can write a REXX exec that includes TSO/E services and run it in a TSO/E address space, or you can write an application in REXX to run outside of a TSO/E address space. For more information, see Using REXX in TSO/E and Other MVS Address Spaces.
REXX is far more extensive and pervasive than TSO. Within the TSO environment, REXX can be used to develop and exploit ISPF Services [Panels, Table Services, Library Management, File Tailoring]. There is an SDSF interface, a UNIX System Services interface, and even System REXX.
In addition, REXX can be used to write TCP/IP application [sockets programming], within CICS, interfacing to DB2, and run as batch MVS applications. TSO/REXX functions even include the ability to examine storage and follow control block chains.
In addition, REXX is used in many vendor products, especially for system automation. As an example, the CA-SYSVIEW product has an extensive REXX API.
When you consider that these same capabilities can be exploited in Windows and Unix environments, it really is a very powerful, robust language.