| NetRexx | |
|---|---|
![]() | |
| Paradigm | multiparadigm:object-oriented,procedural,structured |
| Designed by | Mike Cowlishaw |
| First appeared | 1996; 30 years ago (1996) |
| Stable release | 5.01 / 2 May 2025; 9 months ago (2025-05-02) |
| Typing discipline | Static, strong, safe, partlydynamic, everything is astring (for the Rexx data type, which handles strings and numbers) |
| OS | Cross-platform:Linux,Microsoft Windows,macOS,z/OS,z/VM,Android |
| License | ICU License[1] |
| Filename extensions | .nrx |
| Website | www |
| Majorimplementations | |
| RexxLA NetRexx[2] | |
| Influenced by | |
| PL/I,REXX,ooREXX,Java | |
NetRexx is an open source, originallyIBM's, variant of theREXXprogramming language to run on theJavavirtual machine.[3] It supports a classic REXX syntax, with no reserved keywords, along with considerable additions to supportobject-oriented programming in a manner compatible with Java'sobject model, yet can be used as both a compiled and an interpreted language, with an option of using only data types native to theJVM or the NetRexx runtime package. The latter offers the standard Rexx data type that combines string processing with unlimited precision decimal arithmetic.
Integration with the JVM platform is tight, and all existing Java class libraries can be used unchanged and without special setup; at the same time, a Java programmer can opt to just use the Rexx class from the runtime package for improved string handling in Java syntax source programs.[4]
NetRexx is free to download from the Rexx Language Association.[2] IBM announced the transfer of NetRexx 3.00 source code to the Rexx Language Association (RexxLA) on June 8, 2011.[5]
In 1995 Mike Cowlishaw portedJava to OS/2 and soon after started with an experiment to runREXX on theJVM. With REXX generally considered the first of the general purpose scripting languages,[6] NetRexx is the first alternative language for the JVM.[7] The 0.50 release, from April 1996, contained the NetRexx runtime classes and a translator written in REXX but tokenized and turned into an OS/2 executable.[8] The 1.00 release came available in January 1997 and contained a translator bootstrapped to NetRexx.
Release 2.00 became available in August 2000 and was a major upgrade, in which interpreted execution was added.[9][10]
Mike Cowlishaw left IBM in March 2010, and the future of IBM NetRexx as open source was unknown for a while. IBM finally announced the transfer of NetRexx source code to the Rexx Language Association (RexxLA) on June 8, 2011, 14 years after the v1.0 release.[5][11]
IBM released the NetRexx source code to RexxLA under theICU license. RexxLA shortly after released this as NetRexx 3.00 and has followed up with regular releases, with 4.01 (2021-03-20) addingJava Platform Module System support to support Java versions 9 and higher.[12] As of 2018[update] theICU license has not been approved byOSI; it appears to be a variant of theExpat License.[13]
This sectionneeds expansion. You can help byadding missing information.(January 2014) |
The syntax and object model of NetRexx differ fromObject REXX, another IBM object-oriented variant of REXX which has been released asopen source software. The successorooREXX shares a few syntactical elements (LOOP,DO OVER) not found in classical REXX.
NetRexx is written in NetRexx and uses the decimal arithmetic of REXX specified in ANSI X3.274.
started active development June 1996