Rexx - Portabilità

La portabilità è un aspetto importante in qualsiasi linguaggio di programmazione. Come si sa, Rexx è disponibile in una varietà di sistemi operativi come Windows e Linux. Quindi è necessario assicurarsi che quando si sviluppa un programma sulla piattaforma Windows, si adottino le precauzioni necessarie se gli stessi programmi vengono eseguiti su una piattaforma Linux.

Rexx ha la capacità di eseguire comandi a livello di sistema. Ci sono comandi che possono essere usati per capire qual è il sistema operativo su cui è in esecuzione. In base all'output può quindi intraprendere le azioni appropriate per vedere quali sono i comandi che possono essere eseguiti su questo sistema operativo.

Esempio

L'esempio seguente mostra come vengono utilizzate le funzioni di analisi per ottenere i dettagli del sistema operativo su cui è in esecuzione il programma.

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

L'output varierà a seconda del sistema operativo. Di seguito viene fornito un output di esempio.

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