Skip to Main Content
REXX is a programming language primarily designed for ease of use. First implemented on the Conversational Monitor System (CMS), REXX has been implemented on TSO Extensions (TSO/E) as a new command language, yet it contains all of the elements of a full-function language. After a brief definition of the main elements of the REXX language, the paper discusses why REXX was implemented on TSO/E, some alternative designs which were considered, and how the final design integrates the new language into the existing TSO/E structure, yet allows REXX programs to be interpreted in any Multiple Virtual Storage (MVS) address space, even outside the TSO/E environment. The paper also introduces the TSO/E “data stack,” which is similar to the stack implemented in CMS, and describes how the definition of the CMS stack had to be extended to allow REXX programs executing concurrently on different MVS tasks to either share or not share the data stack. Throughout the paper, compatibility with other Systems Application Architecture environments, particularly CMS, and performance considerations are discussed.
Note: The Institute of Electrical and Electronics Engineers, Incorporated is distributing this Article with permission of the International Business Machines Corporation (IBM) who is the exclusive owner. The recipient of this Article may not assign, sublicense, lease, rent or otherwise transfer, reproduce, prepare derivative works, publicly display or perform, or distribute the Article.