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