Regina Rexx Interpreter(regina-rexx.sourceforge.io)
regina-rexx.sourceforge.io
Regina Rexx Interpreter
https://regina-rexx.sourceforge.io/
24 comments
Back in the early 90's, I used AREXX (Amiga REXX) to write some closed captioning software that was used by a video post-production agency. More than a decade later it was still being used there. Good times.
Goodness, Rexx. I’m pretty sure I got the job at IBM when I was a kid because I already knew Rexx on the 390, ARexx on the Amiga, and the OS/2 version. I also knew HLASM and ia32 assembler, so I was instantly useful with no further training.
Thanks for the career Rexx!
Thanks for the career Rexx!
I once wrote a bunch of Rexx scripts for the terminal program ZOC (aka Zap-O-Com). This was a Windows shareware terminal program that I used to connect to newsgroups and FTP sites, and telnet to CompuServe and Delphi Information Service!
I had most of a menu driven system working to list various newsgroup messages on my ISP (MindSpring) and download subsets of articles based on keywords. I also had it working to write replies offline then log on and send them in a batch. Totally fun little system!! And Rexx was a fun language to work with.
I had most of a menu driven system working to list various newsgroup messages on my ISP (MindSpring) and download subsets of articles based on keywords. I also had it working to write replies offline then log on and send them in a batch. Totally fun little system!! And Rexx was a fun language to work with.
ZOC still exists. The latest release was in late April. ZOC uses Rexx for scripting because it was originally written and released for OS/2.
This brings back memories. Regina was written by a friend of mine at a university computer club in the 90s. I learned a lot from hanging out there.
I had two brief periods where I used Rexx. The first was the the mid 90's when I used VX-REXX from Watcom, think Visual Basic but with Rexx, to develop a GUI ftp client for OS/2.
The second was in the mid 2000's when I had to write scripts for an interactive voice response system. At least at the time Rexx was big in the IVR scripting world.
The second was in the mid 2000's when I had to write scripts for an interactive voice response system. At least at the time Rexx was big in the IVR scripting world.
I was a VX-REXX user as well. :)
Last time I used Rexx was in 1994. I was 12 and extending the amirc irc client on my family’s amiga.
I have zero memories about what the language actually looks like.
I have zero memories about what the language actually looks like.
I remember Rexx. When I first installed OS/2 to try and power my BBS one of the first things I played with was writing Rexx scripts. I was sure I was going to revolutionize the command-line! By automating Presentation Mangager or was the GUI Workplace Shell? Can't remember, but I remember Rexx!
I've used Rexx a lot on IBM mainframes. 370 series VM/CMS. It took over from EXEC/2 as the "system interpreter" and a lot of system utilities were written in it. The email app was written in Rexx. You could write add-ons/macros to XEDIT in Rexx. The integration with everything was just awesome.
Even wrote a couple of games that ran on graphics terminals (3279???) ... my version of pacman and space invaders...
There was even this whole image processing library built over it...
Very powerful language though also very well matched to the environment and didn't carry as cleanly to others though it was nice to have it in OS/2. Clearly ahead of its time back in the day when IBM actually did cool stuff ;). https://en.wikipedia.org/wiki/Mike_Cowlishaw
Even wrote a couple of games that ran on graphics terminals (3279???) ... my version of pacman and space invaders...
There was even this whole image processing library built over it...
Very powerful language though also very well matched to the environment and didn't carry as cleanly to others though it was nice to have it in OS/2. Clearly ahead of its time back in the day when IBM actually did cool stuff ;). https://en.wikipedia.org/wiki/Mike_Cowlishaw
Similar here....I remember becoming a proper adult, putting my huge PC Magazine DOS Power Tools book away and getting OS/2 Warp running, playing with Rexx. You could do Presentation Manager windows and things direct from Rexx, right? It seemed pretty neat at the time.
Should have kept the DOS batch files around, for all the good it did. I missed all my non-OS/2-compatible games at home, and got hired doing Novell IT all day at work.
(It also didn't help that all the OS/2 admins at work, accountants who worked on an OS/2-based vending system, talked to us Windows / Novell admins as if we were complete morons. Fire phasers!)
Should have kept the DOS batch files around, for all the good it did. I missed all my non-OS/2-compatible games at home, and got hired doing Novell IT all day at work.
(It also didn't help that all the OS/2 admins at work, accountants who worked on an OS/2-based vending system, talked to us Windows / Novell admins as if we were complete morons. Fire phasers!)
Yes Warp! And that was exactly it, I was blown away to control the GUI from the command-line. Good times, similar time-frame I was first playing with Linux, but there I was just excited to get my BogoMips to scroll by, after building it.
My only experience with Rexx was on OS/2 trying to get my Multiprise 3000 up and running. I was very pleased that it was a plain text scripting language as the installer kept being annoying about software versions and I could just manually change the version it would accept.
lol, the other end of the HW spectrum! My i486 (could of been a 386, but not a Pentium) and I could only look on with envy!
Rexx is such a useful language. I used to use a lot of Kexx macros for the KEDIT editor. The other thing I remember as being novel is the 'whitespace operator' ( ) for concatenating two strings with a space vs the dot (.) operator which does so with no space.
I think you may be mixing things up a bit.
Strings can be concatenated using either double pipes || or just no operator at all, E.G.
Strings can be concatenated using either double pipes || or just no operator at all, E.G.
'String'FOO
will concatenate the 'String' literal and the FOO variable. Writing 'String' FOO
instead will put a literal space between the concatenated values. Hence, the || is useful for concatenating two variables: FOO = BAR||BAZ
The dot is used for denoting compound variables which, together with the INTERPRET statement, is what was really novel about Rexx IMHO: https://datagubbe.se/rexxtut/Oh that's right. [I think the dot is from the bit of PHP that I did, doh!]
Caveat, the 'no operator' concatenation strips extra spaces, E.G.
'FOO' 'FOO'
Results in
'FOO FOO'
The compound variables are really useful, they allow me to create hash like structures in the Mainframe.
The compound variables are really useful, they allow me to create hash like structures in the Mainframe.
> Caveat, the 'no operator' concatenation strips extra spaces
I assume you mean Rexx adds an extra space if whitespace is added between the values when concatenating them. I addressed this behavior (though perhaps a bit unclearly) in my original comment.
I assume you mean Rexx adds an extra space if whitespace is added between the values when concatenating them. I addressed this behavior (though perhaps a bit unclearly) in my original comment.
> the 'whitespace operator' for concatenating two strings with a space
Very interesting, awk(1) also does this style of string concatenation; does anyone know of other languages with a similar design?
(I'm aware that many functional languages treat whitespace as function application.)
Very interesting, awk(1) also does this style of string concatenation; does anyone know of other languages with a similar design?
(I'm aware that many functional languages treat whitespace as function application.)
SNOBOL uses the space operator for concatenation. That is probably where AWK copied the design from. (Not to mention associative arrays. SNOBOL was the first language to have them.)
Ah, that makes sense!