Jump to content

REXX: Difference between revisions

From EDM2
Ak120 (talk | contribs)
Ak120 (talk | contribs)
mNo edit summary
Line 1: Line 1:
[[Image:Rexxlogo.png|250px|right]]
[[Image:Rexxlogo.png|250px|right]]
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.
'''REXX''' is an interpreted, procedural structured language that is included with every version of OS/2 EE 1.2 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.
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.
Line 17: Line 17:
'''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.
'''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==
==Implementations==
*[[Personal REXX]] - Commercial - Discontinued
{|class="wikitable"
*[[Procedures Language 2/REXX]] (aka SAA REXX) - Development discontinued, but shipped with OS/2
!rowspan=2|Vendor||rowspan=2|Implementation||colspan=4|Operating environment||rowspan=2|
*[[Regina REXX]] - Compatible with Classic REXX - Open Source
|-
;Utilities and translators
!OS/2||DOS||Win16||Win32
* Rexx2Nrx - Converts SAA REXX code to NetRexx - Open Source - Discontinued
|-
 
|rowspan=3|IBM||[[Procedures Language 2/REXX]]||X|| || || ||(aka SAA REXX) shipped with OS/2
==DOS Implementations==
|-
*[[BREXX]] - Open Source
|[[REXXPC88]]|| ||X|| || ||IBM internal (1987/88)
*[[PC DOS REXX]] - Commercial - included in IBM PC DOS versions 7 and higher
|-
*[http://speleotrove.com/rexxhist/rexxcrx.html Compact Rexx] (CRX) - Open source
|[[PC DOS REXX]]|| ||X|| || ||included in IBM PC DOS versions 7 and higher
*[[Personal REXX]] - Commercial - Discontinued
|-
*Portable Rexx - Commercial - Discontinued
|Quercus||[[Personal REXX]]||X||X||X|| ||Commercial
*[[Regina REXX]] - Compatible with classic REXX - Open Source
|-
*[[REXXPC88]] - 1987/88 IBM internal
| ||[[Regina REXX]]||X||X|| || ||Compatible with Classic REXX - Open Source
|-
| ||[[BREXX]]|| ||X|| || ||Open Source
|-
| ||Compact Rexx (CRX)|| ||X|| || ||Open source
|-
| ||Portable Rexx|| ||X|| || ||Commercial
|-
| ||WinREXX|| || ||X|| ||Commercial
|-
| ||WREXX|| || ||X|| ||Commercial
|}


===Text editor support===
===Text editor support===
*[[Boxer]] - Regina, IBM and BREXX support included by default
*[[Boxer]] - Regina, IBM and BREXX support included by default
*[[FTE]] - Has support for syntax highlighting, code folding and syntax-aware autoindent. - Open source
*[[FTE]] - support for syntax highlighting, code folding and syntax-aware autoindent.
 
===Win-OS/2 implementations===
*[[Personal REXX]] - Commercial - Discontinued
*WinREXX - Commercial - Discontinued
*WREXX - Commercial - Discontinued
 
==Java implementations==
* [[NetRexx]]


==Publications==
==Publications==
For listings of REXX related books and general articles see the [[REXX Bibliography]].
For listings of REXX related books and general articles see the [[REXX Bibliography]].
* [http://www.cs.ox.ac.uk/people/ian.collier/Docs/rexx_info/whole.html Ian Collier's REXX tutorial]
* [http://www.cs.ox.ac.uk/people/ian.collier/Docs/rexx_info/whole.html Ian Collier's REXX tutorial]
* [[Vladimír Zábrodský]]: ''[http://www.os2.cz/en/introduction-rexx-programming-language An Introduction To The REXX Programming Language]'' (OS/2.cz)
* [[Vladimír Zábrodský]]: ''[http://www.os2.cz/en/introduction-rexx-programming-language An Introduction To The REXX Programming Language]'' (OS/2.cz)

Revision as of 17:31, 25 October 2019

REXX is an interpreted, procedural structured language that is included with every version of OS/2 EE 1.2 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.

History

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.

Implementations

Vendor Implementation Operating environment
OS/2 DOS Win16 Win32
IBM Procedures Language 2/REXX X (aka SAA REXX) shipped with OS/2
REXXPC88 X IBM internal (1987/88)
PC DOS REXX X included in IBM PC DOS versions 7 and higher
Quercus Personal REXX X X X Commercial
Regina REXX X X Compatible with Classic REXX - Open Source
BREXX X Open Source
Compact Rexx (CRX) X Open source
Portable Rexx X Commercial
WinREXX X Commercial
WREXX X Commercial

Text editor support

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

Publications

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

Links

Standards
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.