# NetRexx

> open source, originally IBM's, variant of the REXX programming language to run on the Java virtual machine

**Wikidata**: [Q6998311](https://www.wikidata.org/wiki/Q6998311)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/NetRexx)  
**Source**: https://4ort.xyz/entity/netrexx

## Summary
NetRexx is an open-source programming language originally developed by IBM as a variant of the REXX language designed to run on the Java virtual machine. It was created by Mike Cowlishaw and first released in 1996, combining the simplicity of REXX with Java's object-oriented capabilities.

## Key Facts
- Developed by IBM and first released in 1996
- Created by British computer scientist Mike Cowlishaw
- Designed as a variant of the REXX programming language
- Runs on the Java virtual machine (JVM)
- Classified as both a programming language and an object-based language
- Features dynamic typing, static typing, strong typing, and safe typing
- Supports object-oriented, procedural, and structured programming paradigms
- Has library of Congress authority ID: sh96010695
- Available in English and Spanish Wikipedia editions
- Influenced by the REXX programming language

## FAQs

### Q: What is NetRexx and how does it differ from regular REXX?
A: NetRexx is an IBM-developed variant of the REXX programming language that runs on the Java virtual machine. Unlike traditional REXX, NetRexx provides object-oriented capabilities and integrates with Java's ecosystem while maintaining REXX's simple syntax.

### Q: Who created NetRexx and when was it released?
A: NetRexx was created by British computer scientist Mike Cowlishaw and was first released by IBM in 1996 as an open-source project.

### Q: What programming paradigms does NetRexx support?
A: NetRexx supports multiple programming paradigms including object-oriented programming, procedural programming, and structured programming, making it versatile for different programming approaches.

### Q: What typing disciplines does NetRexx use?
A: NetRexx employs multiple typing disciplines including dynamic typing, static typing, strong typing, and safe typing, providing flexibility while maintaining type safety.

### Q: Is NetRexx still actively maintained?
A: While the source material doesn't specify current maintenance status, NetRexx was originally developed as an open-source project by IBM, suggesting it may have community support beyond its initial development period.

## Why It Matters
NetRexx represents an important bridge between the simplicity of REXX and the power of the Java ecosystem. By bringing REXX's accessible syntax to the Java virtual machine, NetRexx enabled developers to leverage Java's extensive libraries and cross-platform capabilities while maintaining the ease of use that made REXX popular. This was particularly significant during the late 1990s when Java was rapidly gaining adoption but still had a steeper learning curve than REXX. NetRexx allowed organizations with existing REXX expertise to transition to Java-based environments without abandoning their investment in REXX knowledge. The language's support for multiple programming paradigms and typing disciplines made it adaptable to various development needs, from simple scripting to complex object-oriented applications. As an open-source project from IBM, NetRexx also demonstrated the company's commitment to supporting developer communities and fostering innovation in programming language design.

## Notable For
- First REXX variant specifically designed to run on the Java virtual machine
- Created by Mike Cowlishaw, the original creator of REXX
- Combines REXX's simplicity with Java's object-oriented capabilities
- Supports multiple programming paradigms within a single language
- Features comprehensive typing discipline support including dynamic, static, strong, and safe typing

## Body
### Development and Origins
NetRexx was developed by IBM as an open-source project, with its inception dating back to 1996. The language was designed by Mike Cowlishaw, who is also known as the creator of the original REXX programming language. This connection to REXX's creator ensured that NetRexx maintained the core principles and simplicity that made REXX popular while extending its capabilities for modern computing environments.

### Technical Architecture
As a JVM-based language, NetRexx compiles to Java bytecode, allowing it to run on any platform that supports the Java virtual machine. This architecture provides NetRexx with the cross-platform compatibility and extensive library support that Java offers. The language maintains backward compatibility with REXX while adding object-oriented features that enable developers to create more complex and structured applications.

### Typing and Programming Paradigms
NetRexx supports a sophisticated typing system that includes dynamic typing, static typing, strong typing, and safe typing. This multi-faceted approach to typing allows developers to choose the appropriate level of type safety for their specific needs. The language supports object-oriented programming, procedural programming, and structured programming paradigms, making it versatile for various development scenarios.

### Language Classification
NetRexx is classified as both a programming language and an object-based language. This dual classification reflects its heritage as a REXX variant while acknowledging its enhanced object-oriented capabilities. The language's design philosophy emphasizes simplicity and readability while providing the power needed for modern software development.

### Documentation and Standards
NetRexx has been recognized in various bibliographic and library systems, including having a Library of Congress authority ID (sh96010695) and a National Library of Israel J9U ID. These identifiers indicate the language's significance in the computing field and its formal recognition in academic and research contexts. The language's documentation and specifications have been maintained to ensure consistency and reliability for developers using the language.

## References

1. [Source](https://github.com/JohnMarkOckerbloom/ftl/blob/master/data/wikimap)
2. National Library of Israel Names and Subjects Authority File