Rexx - Portabilidade
A portabilidade é um aspecto importante em qualquer linguagem de programação. Como se sabe, Rexx está disponível em uma variedade de sistemas operacionais como Windows e Linux. Portanto, é necessário garantir que, ao desenvolver um programa na plataforma Windows, sejam tomados os cuidados necessários caso o mesmo programa seja executado na plataforma Linux.
Rexx tem a capacidade de executar comandos de nível de sistema. Existem comandos que podem ser usados para entender qual é o sistema operacional no qual está sendo executado. Com base na saída, ele pode executar as ações apropriadas para ver quais são os comandos que podem ser executados neste sistema operacional.
Exemplo
O exemplo a seguir mostra como as funções de análise são usadas para obter os detalhes do sistema operacional no qual o programa está sendo executado.
/* 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
A saída irá variar dependendo do sistema operacional. Um exemplo de saída é fornecido abaixo.
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