Rexx - Portabilidad

La portabilidad es un aspecto importante en cualquier lenguaje de programación. Como se sabe, Rexx está disponible en una variedad de sistemas operativos como Windows y Linux. Por lo tanto, es necesario asegurarse de que cuando se desarrolla un programa en la plataforma Windows, se toman las precauciones necesarias si los mismos programas se ejecutan en una plataforma Linux.

Rexx tiene la capacidad de ejecutar comandos a nivel de sistema. Hay comandos que se pueden utilizar para comprender cuál es el sistema operativo en el que se ejecuta. Según el resultado, puede tomar las acciones adecuadas para ver cuáles son los comandos que se pueden ejecutar en este sistema operativo.

Ejemplo

El siguiente ejemplo muestra cómo se utilizan las funciones de análisis para obtener los detalles del sistema operativo en el que se ejecuta el programa.

/* 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

La salida variará según el sistema operativo. A continuación se proporciona un resultado de muestra.

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