NetRexx - NetRexx
Парадигма | мультипарадигма : объектно-ориентированный , процедурный , структурированный |
---|---|
Разработано | Майк Коулишоу |
Впервые появился | 1996 г. |
Стабильный выпуск | 4.01 / 20 марта 2021 г .
|
Печатная дисциплина | Статический, надежный, безопасный , частично динамический , все является строкой (для типа данных Rexx, который обрабатывает строки и числа) |
Лицензия | Лицензия ICU |
Расширения имени файла | .nrx |
Основные реализации | |
RexxLA NetRexx | |
Под влиянием | |
PL / I , REXX , ooREXX , Java |
NetRexx является открытым исходным кодом, первоначально IBM вариант «s, из REXX языка программирования для запуска на Java виртуальной машины . Он поддерживает классический синтаксис REXX, без зарезервированных ключевых слов, а также значительные дополнения для поддержки объектно-ориентированного программирования способом, совместимым с объектной моделью Java , но может использоваться как в качестве компилируемого, так и в качестве интерпретируемого языка с возможностью использования только типы данных, присущие JVM или исполняемому пакету NetRexx. Последний предлагает стандартный тип данных Rexx, сочетающий строковую обработку с десятичной арифметикой неограниченной точности.
Интеграция с платформой JVM тесная, и все существующие библиотеки классов Java можно использовать без изменений и без специальной настройки; в то же время программист на Java может выбрать просто использование класса Rexx из пакета среды выполнения для улучшенной обработки строк в исходных программах синтаксиса Java.
NetRexx можно бесплатно загрузить с сайта Rexx Language Association. IBM объявила о передаче исходного кода NetRexx 3.00 в Rexx Language Association (RexxLA) 8 июня 2011 года.
История
В 1995 году Майк Коулишоу портировал Java на OS / 2 и вскоре после этого начал эксперимент по запуску REXX на JVM . Поскольку REXX обычно считается первым из языков сценариев общего назначения, NetRexx является первым альтернативным языком для JVM. Выпуск 0.50, выпущенный в апреле 1996 года, содержал классы времени выполнения NetRexx и транслятор, написанный на REXX, но токенизированный и преобразованный в исполняемый файл OS / 2. Версия 1.00 была доступна в январе 1997 года и содержала переводчик, загружаемый для NetRexx.
Релиз 2.00 стал доступен в августе 2000 г. и представлял собой крупное обновление, в которое было добавлено интерпретируемое выполнение.
Майк Коулишоу покинул IBM в марте 2010 года, и будущее IBM NetRexx как открытого исходного кода какое-то время было неизвестно. Наконец, IBM объявила о передаче исходного кода NetRexx в Rexx Language Association (RexxLA) 8 июня 2011 года, через 14 лет после выпуска версии 1.0.
IBM выпустила исходный код NetRexx для RexxLA по лицензии ICU . Вскоре после этого RexxLA выпустила это как NetRexx 3.00, а затем выпустила регулярные выпуски, последний из которых - 4.01 от 2021-03-20, в котором добавлена поддержка Java Platform Module System . По состоянию на 2018 год лицензия ICU не была утверждена OSI ; похоже, это вариант лицензии Expat .
Синтаксис
Синтаксис и объектная модель NetRexx отличаются от Object REXX , другого объектно-ориентированного варианта REXX от IBM, выпущенного как программное обеспечение с открытым исходным кодом . Преемник ooREXX имеет несколько синтаксических элементов ( LOOP
, DO OVER
), которых нет в классическом REXX.
NetRexx написан на NetRexx и использует десятичную арифметику REXX, указанную в ANSI X3.274.