Rexx - портативность
Переносимость - важный аспект любого языка программирования. Как известно, Rexx доступен в различных операционных системах, таких как Windows и Linux. Таким образом, при разработке программы на платформе Windows необходимо обеспечить принятие необходимых мер предосторожности, если те же программы работают на платформе Linux.
Rexx имеет возможность запускать команды системного уровня. Есть команды, которые можно использовать, чтобы понять, в какой операционной системе он запущен. На основе выходных данных он может предпринять соответствующие действия, чтобы увидеть, какие команды можно запускать в этой операционной системе.
пример
В следующем примере показано, как функции синтаксического анализа используются для получения сведений об операционной системе, в которой выполняется программа.
/* Main program */
parse version language level date month year.
parse source system invocation filename.
language = translate(language)
if pos('REGINA',language) = 0 then
say 'Error , the default interpreter is not Regina' language
say 'The Interpreter version/release date is:' date month year
say 'The Language level is: ' level say 'The Operating System is'
select
when system = 'WIN32' then
'ver'
when system = 'UNIX' | system = 'LINUX' then
'uname -a'
otherwise
say 'Unknown System:' system
end
if rc <> 0 then
say 'Error :' rc
Результат будет зависеть от операционной системы. Ниже приведен пример вывода.
The Interpreter version/release date: 5 Apr 2015
The Language level is: 5.00
The Operating System is
Unknown System: WIN64
Bad return code: RC