REXX: Difference between revisions
No edit summary |
|||
Line 10: | Line 10: | ||
It is in general recommended that Classic REXX is set as the default since most OS/2 and eComStation utilities use it. | It is in general recommended that Classic REXX is set as the default since most OS/2 and eComStation utilities use it. | ||
== | ==OS/2 REXX implementations and tools== | ||
* [[Object REXX]] - Open source - OS/2 version discontinued, but older version shipped with OS/2 V4 and all eComStation versions. | * [[Object REXX]] - Open source - OS/2 version discontinued, but older version shipped with OS/2 V4 and all eComStation versions. | ||
* [[Personal REXX]] - Commercial - Discontinued | * [[Personal REXX]] - Commercial - Discontinued |
Revision as of 02:37, 23 January 2016

An interpreted, procedural structured language that is included with every version of OS/2 1.3 and higher, every version of IBM PC-DOS 7.0 and higher and most modern Amiga OS 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 of IBM Hursley in 1979 and the first implementation was shipped inside IBM in 1980 and as an external product in 1982.
Object REXX is a later version of the language that has been given object-oriented extensions modelled on those present in Smalltalk (IBM's language of choice at the time), while it is mostly compatible with Classic REXX there are some minor differences that mean that most larger REXX programs have to have at the lease some modifications to run correctly under OREXX, and this has meant that in the OS/2 world it never gained any real traction. 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 version 4 and later and all versions of eComStation are shipped with both Classic REXX and Object REXX, the difference being that OS/2 defaults to Object REXX while eComStation defaults to Classic REXX. If you want to switch between implementations you can issue the SWITCHRX command in a CLI shell 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 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.
OS/2 REXX implementations and tools
- Object REXX - Open source - OS/2 version discontinued, but older version shipped with OS/2 V4 and all eComStation versions.
- Personal REXX - Commercial - Discontinued
- Regina REXX - Compatible with Classic REXX - Open Source - Current
- REXX/2 aka Classic REXX - Development discontinued, but shipped with all OS/2 32 bit versions and eComStation.
Libraries, extensions and bindings
- Bullet/REXX - Allows you to work with xBase files or databases - Commercial - Discontinued.
- dbfREXX - Allows you to work with xBase files or databases - Commercial - Discontinued.
- REXXBOS - A complete OS/2 system interface for REXX - great for REXX CGI scripts - Commercial - Current
- REXXSEM - Semaphore support for REXX - Used to be shareware, now freeware.
- RXULS - REXX Unicode API - Open source - Current.
- SpUtils - PM and API fuctions - Open source - Discontinued.
GUI/Widget bindings
- Rexx/Curses - Bindings to the PD Curses text mode UI library - Open source - Current
- REXX/DW - Bindings to the Dynamic Windows GUI/Widget toolkit - Open source - Current
- REXX/Tk - Bindings to the Tcl/Tk GUI/Widget toolkit - Open source - Discontinued
Graphical front ends and REXX development systems
- Dr. Dialog - Freeware - Discontinued
- GpfREXX - Commercial - Development discontinued but still available for sale at a discounted price.
- MAID - Commercial - Current
- VREXX - Freeware - Discontinued
- VX-REXX - Commercial - Discontinued
OS/2 text & programmers editors with REXX support
- Boxer - Classic REXX (Regina & IBM) and BREXX support included by default.
- Enhanced Editor - Has syntax highlighting, auto-formatting and automatic code summary for REXX.
- FTE - Has support for syntax highlighting, code folding and syntax-aware autoindent. - Open source - Current.
- Future Wave Editor - macro & syntax support included by default - Shareware - Current.
- jEdit - Java editor
- KEDIT
A list of DOS implementations of REXX
- BREXX - Open Source - Current
- Classic REXX - Commercial - Comes with PC-DOS versions 7 and higher.
- Compact Rexx (CRX) - Open source - Discontinued.
- Personal REXX - Commercial - Discontinued
- Portable Rexx - Commercial - Discontinued
- Regina REXX - Compatible with Classic REXX - Open Source - Current
DOS text & programmers editors with REXX support
- Boxer - Regina, IBM and BREXX support included by default
- FTE - Has support for syntax highlighting, code folding and syntax-aware autoindent. - Open source - Current.
A list of REXX implementations that run under WinOS/2
- Object REXX - Open source - Win32s version discontinued - IBM versions supported running under Win3x with Win32s.
- Personal REXX - Commercial - Discontinued
- WinREXX - Commercial - Discontinued
- WREXX - Commercial - Discontinued.
A list of REXX implementations that run under Java
Publications
- Classic REXX Books.
- Michael F. Cowlishaw: The REXX Language: A Practical Approach to Programming; Second Edition - 1990 - ISBN 0137806515 - In print
- Michael F. Cowlishaw: A Practical Approach to Programming the Rexx Language - 1985 - ISBN 013780735-X - Out of print.
- Howard Fosdick: Rexx Programmer's Reference - 2005 - ISBN 0764579967 - In print
- William F. Schindler: Down to Earth REXX - 2000 - ISBN 0967759005 - In print.
- Gabriel F. Gargiulo: Mastering OS/2 Rexx - 1994 - ISBN 0471519014 - In print
- Gabriel F. Gargiulo: Rexx With OS/2, TSO & CMS Features; Quick Reference Guide (Mainframe Technical Series) – 1999 - ISBN: 189255903X - Out of print.
- William F. Schindler & Esther Schindler: Sams Teach Yourself REXX in 21 Days - 1994 - ISBN: 0672305291 - Out of print ("Down to Earth REXX" above in an updated, in-print version)
- Merrill Callaway: The Rexx Cookbook: A Tutorial Guide to the Rexx Language in OS 2 & Warp on the IBM Personal Computer - 1995 - ISBN: 0963277340 - Out of print.
- Robert O'Hara and David Ross Gomberg: Modern Programming Using REXX - 1988 - ISBN: 0135973295 - Out of print
- Anthony S. Rudd: Application Development Using OS/2 Rexx - 1994 - ISBN 047160691X - Out of Print.
- Anthony S. Rudd: Practical Usage of REXX (Ellis Horwood Series in Computers and Their Applications) - 1990 -ISBN: 013682790X - Out of print.
- Ronny Richardson: Writing OS/2 REXX Programs (McGraw-Hill/IBM) - 1994 - ISBN 007052372X - Out of print. (Came with examples on a floppy)
- Richard K. Goran: Rexx Reference Summary Handbook; Second Edition - 1994 - ISBN 0963985418 - Out of print
- William Mansfield: Rexx Language: Special Edition – 1990 - ISBN 0137790678 - Out of print.
- Hallett German: OS/2 2.1 REXX Handbook: Basics, Applications and Tips (VNR Computer Library) – 1993 - ISBN 0442017340 - Out of print.
- Peter C. Kiesel & J.Ranade: REXX: Advanced Techniques for Programmers (McGraw-Hill/IBM) - 1992 - ISBN: 0070346003 - Our of print.
Classic REXX in German
- Karlheinz Wittemann und Stefan Gerten: REXX unter OS/2. – 1996 - ISBN: 3446185089 - Out of print.
- Michael F. Cowlishaw: Die Programmiersprache REXX - 1988 - ISBN: 3446151958 - Out of print - German translation of the first edition of the "Rex language" book.
- Gerhard Leibrock: Das REXX- Lexikon. Begriffe, Anweisungen, Funktionen. - 1997 - ISBN: 3486236725 - Out of print
Classic REXX in Japanese
- Michael F. Cowlishaw: Rekkusu gengo nyumon: puroguraminguhe no jissenteki apurochi (Translated by Yoichi Muraoka and Koji Shibano) - 1987 - ISBN: 4-7649-0136-6 - Japanese translation of the first edition of the the "Rex language" book.
- Object REXX books.
- Tom Ender: Object-oriented Programming with REXX - 1997 - ISBN: 0471118443 - Out of print.
- Ueli Wahli, Trevor Turton, Eddie Griborn and Norio Furukawa: Object Rexx for OS/2 Warp - 1996 - ISBN: 0132734672 - Out of print.
- The following books apply to SAA or mainframe REXX but may be useful nonetheless
- Charles Daney: Programming in REXX - 1990 - ISBN: 0070153051 - Out of print.
Local articles
- Douglas Clark: Rexx: The King is Alive and Well
- Dan Bridges: The Joy of REXX - Tutorial and Book review
- Roger Orr: OS/2 Procedures Language - REXX - Introductory material
- REXX Tips & Tricks:Sources
- Dave Briccetti: Sending Mail with REXX
- OS2 API:REXX
- Darin McBride: REXXSEM:The Reference
Code snippets
Tutorials and other learning material
- Our own introduction and turorial written by Roger Orr: OS/2 Procedures Language - REXX
- Ian Collier's REXX tutorial
- An Introduction To The REXX Programming Language - From OS/2.cz
- Using REXX to repair and control the desktop - From Les Bell and Associates Pty Ltd
Links
- The Rexx Language Association
- Ian Collier's REXX page
- IBM REXX page
- Mark Hessling's Home Page - Lots of Rexx and Regina information and files from the gent behind Regina REXX, including a Rexx manual
USENET
- comp.lang.REXX - Surprisingly popular - Go to the Google groups version if you are newsgroup challenged.
Built with REXX
- SRE-HTTP - A web server written primarily in REXX
Standards
- ANSI standard for Rexx (X3.274), Published in 1996.
REXX history
The REXX language was created by Mike Cowlishaw of IBM Hursley in 1979, initially as a written specification and the first implementation was shipped inside IBM in 1980 and as an external product in 1982.