From EDM2
Jump to: navigation, search

An interpreted, procedural structured language that is included with every version of OS/2 1.2EE and later, IBM PC-DOS 7.0 and most AmigaOS variants and clones in addition to all current and recent IBM mainframe and minicomputer operating systems.

Although REXX is a generic programming language and can be (and has been) used to construct everything from simple utilities to large business applications, it is primarily used as a scripting or macro language, and as such is unusually easy to learn.


The REXX language was created by Mike Cowlishaw in 1979 under VM/CMS. The second implementation (2.00) was used inside IBM in 1980. Language level 3.20 was included in VM/SP Release 3 which was released in 1983.

Third party implementations started appearing in 1985.

In 1987 REXX was chosen to be the Systems Application Architecture (SAA) procedural language.

In 1989 the first version of IBM CMS REXX Compiler was released.

Object REXX is a different language that has been given object-oriented extensions modelled on those present in Smalltalk. While it is mostly compatible with Classic REXX there are some minor differences. It means that some REXX programs have to be modified to run correctly under Object REXX.

Amiga REXX is a clone of IBM's Classic REXX that has extensions to help its use as a mechanism for application to application and/or inter-application communication, Regina REXX supports those extensions.

OS/2 Implementations and tools

Utilities and translators
  • Rexx2Nrx - Converts SAA REXX code to NetRexx - Open Source - Discontinued

DOS Implementations

Text editor support

  • Boxer - Regina, IBM and BREXX support included by default
  • FTE - Has support for syntax highlighting, code folding and syntax-aware autoindent. - Open source

Win-OS/2 implementations

  • Personal REXX - Commercial - Discontinued
  • WinREXX - Commercial - Discontinued
  • WREXX - Commercial - Discontinued

Java implementations


For listings of REXX related books and general articles see the REXX Bibliography.


Source code snippets, archives and collections

Small programs or routines that you can integrate into your own programs or study to learn from, but are not delivered in library form.