Regina ist ein freier REXX-Interpreter, den Mark Hessling ab 1992 entwickelte und der seither kontinuierlich gepflegt wird. Regina implementiert den SAA-Sprachstandard von REXX und wurde auf sehr viele Plattformen portiert: Linux, BSD, Solaris, AIX, macOS, Windows, OS/2, Amiga, OpenVMS und weitere. Damit ist Regina die erste Wahl für klassisches REXX-Skripting unter Unix.

Starten

Ein Regina-Skript wird direkt mit dem Befehl regina ausgeführt (Debian/Ubuntu-Paket regina-rexx):

regina hello.rexx

Die Dateiendung .rexx ist üblich, aber nicht vorgeschrieben — REXX-Quelltext ist reiner Text, das erste Zeichen des ersten Worts bestimmt bei einem Stapelverarbeitungsskript, wie es interpretiert wird.

Sprachkern

Regina deckt den kompletten REXX-Sprachkern ab: SAY für Ausgabe, PULL und PARSE für Eingabe und Zeichenkettenzerlegung, DO/END-Schleifen, IF/THEN/ELSE, benannte Prozeduren mit PROCEDURE und RETURN sowie ADDRESS, um Kommandos an das Betriebssystem zu senden.

say 'Hallo von Regina'
parse arg name
say 'Hallo,' name '!'
do i = 1 to 3
  say copies('*', i)
end

Anbindung

Die Regina-API ist konsistent mit IBMs Rexx-SAA-API, sodass C-Programme Regina als eingebettete Skriptsprache nutzen können — ein wichtiger Grund für die weite Verbreitung in Systemwerkzeugen.

Verwandte Grundlagen: Rexx-Befehle, ooRexx-Befehle, NetRexx-Befehle.