REXX(REstructured eXtended eXecutor)は、IBMが開発した汎用的なプログラミング言語で対話式処理も可能な構造化された高水準インタープリター言語です。REXXで作成されたプログラムは「REXX exec」とも呼ばれます。REXXは次に掲げるような処理に適している、とされています。
z/OSのみならず、VSE、VM、OS/400、AIX、OS/2などIBM社のコンピュータ・プラットフォームで共通して利用でき、IBM以外のLinux、Solaris、Windowsなどでも利用できます。
z/OSにおいては、主にTSOの拡張CLISTとしてあるいはシステム管理や保守などのアドミニストレーター・ツールの作成などに利用されています。メインフレームで伝統的に使われてきたCOBOLなどとはだいぶ異なりますが、C言語やPerl、Javaなどに慣れた人には取っつきやすい言語でしょう。
REXXの簡単なサンプル(バッチ実行用)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
// JOB //********************************************************************* //REXX PROC UPARM= //REXXCS EXEC PGM=IEBGENER //SYSPRINT DD DUMMY //SYSIN DD DUMMY //SYSUT2 DD DISP=(,PASS),DSN=&&EXEC(MYREXX), // UNIT=SYSDA,SPACE=(TRK,(1,,1)), // DCB=(RECFM=FB,BLKSIZE=0,LRECL=80) //REXXGO EXEC PGM=IKJEFT01,PARM='MYREXX &UPARM' //SYSTSPRT DD SYSOUT=* //SYSEXEC DD DISP=SHR,DSN=&&EXEC //SYSTSIN DD DUMMY // PEND //********************************************************************* //STEP1 EXEC REXX,UPARM='Hello World !' //REXXCS.SYSUT1 DD DATA,DLM='++' /* REXX: Sample Program */ arg parm1; say "Input Parameter =" parm1; ++ // |
REXXについては、REXX入門というカテゴリーに連載がありますのでそちらを参照下さい。