Object REXX

From EDM2
(Redirected from OoRexx)
Jump to: navigation, search

Object REXX (OREXX) is an object-oriented programming language developed by IBM that is basically an extension to SAA REXX (Classic REXX) that gains the object model from Smalltalk with a few other language extensions.

While Object REXX is mostly compatible with Classic REXX there are some minor differences that mean that most REXX programs have to have at the least some modifications to run correctly under OREXX, and this has meant that in the OS/2, AIX and IBM mainframe worlds it never gained any real traction as it was incompatible with a large existing codebase, while on MS Windows and Linux OREXX has become the standard. This eventually lead IBM to cease all Object REXX development and hand it over to a third party.


Object REXX coexistence with Classic REXX

OS/2 Warp 4 and later releases (WorkSpace on-Demand, Warp Server for e-business) shipped with both Classic REXX and Object REXX interpreters. To switch between implementations the SWITCHRX command can be used and the system will default to the alternative version to the current one at next boot. If you want to use both at the same time you have a few options, you can specifically call the alternative version to the one you are currently using either from a command line or from a script or batch file or you can associate different extensions to different interpreters.

It is in general recommended that Classic REXX is set as the default since most OS/2 and eComStation utilities use it.

Object REXX classes and bindings

In addition to classes developed specifically for it, Object REXX can use extensions intended for Classic REXX, you can take a look at the REXX page for some of those. There are usually no real compatibility issues, but care needs to be taken with multi threading if you use it, Classic REXX always addresses extensions on a single thread so some extension packages expect the tread that initiated the extension to be the only thread that uses it.

Object REXX Utilities

OS/2 text editors with Object REXX support

  • Enhanced Editor (EPM) - shipped with OS/2 Warp 4 OpenDoc
  • jEdit - Java based editor - Object REXX syntax highlighting built in

Object REXX 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.



  • Veneskey; Trosky; Urbaniak: Object REXX by Example – Aviar 1996, ISBN 0-9652329-0-5
  • Tom Ender: Object-oriented Programming with REXX - Wiley 1997, ISBN 0-471-11844-3
  • Ueli Wahli, Trevor Turton, Eddie Griborn & Norio Furukawa: Object Rexx for OS/2 Warp - Prentice Hall 1996, ISBN 0-13-273467-2
  • Ueli Wahli, Trevor Turton, Ingo Holder: Object Rexx for Win95/NT - Prentice Hall 1996, ISBN 0-13-858028-6