Rexx - Portabilitas

Portabilitas merupakan aspek penting dalam bahasa pemrograman apa pun. Seperti yang diketahui, Rexx tersedia di berbagai sistem operasi seperti Windows dan Linux. Jadi perlu dipastikan bahwa ketika seseorang mengembangkan program pada platform Windows, ia memiliki tindakan pencegahan yang diperlukan jika program yang sama berjalan pada platform Linux.

Rexx memiliki kemampuan untuk menjalankan perintah tingkat sistem. Ada perintah yang dapat digunakan untuk memahami apa sistem operasi yang menjalankannya. Berdasarkan keluarannya kemudian dapat mengambil tindakan yang sesuai untuk melihat perintah apa saja yang dapat dijalankan pada sistem operasi ini.

Contoh

Contoh berikut menunjukkan bagaimana fungsi parse digunakan untuk mendapatkan detail sistem operasi yang menjalankan program.

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

Outputnya akan bervariasi bergantung pada sistem operasi. Output sampel diberikan di bawah ini.

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