Rexx for Everyone
An anonymous reader writes "It's easy to get lost in the world of 'little languages' -- quite a few have been written to scratch some itch of a company, individual, or project. Rexx is one of these languages, with a long history of use on IBM operating systems, and good current implementations for Linux and other Free Software operating systems. Rexx occupies a useful ecological niche between the relative crudeness of shell scripting and the cumbersome formality of full systems languages. Many Linux programmers and systems administrators would benefit from adding a Rexx implementation to their collection of go-to tools."
I have spent more hours fiddling with Rexx syntax, trying to get it right, than any other scripting language including awk. It seems underpowered and unintuitive to me. Perhaps if it was my first scripting language I'd appreciate it, but having several already jostling around in my head ... ugh.
Who needs more than three scripting languages, anyway?
And very nice it was too. The key reason it took off were that application developers decided to support it even before AmigaOS 2.04 as a defacto standard for scripting and remote control. Most substantial applications - and quite a few minor ones - came with an "AREXX port" which you could use to send commands to the app to get it to do things.
This functionality seems to be sadly lacking these days in OSS or in a cross-vendor environment. You get the occasional application with a self-contained Python subsystem or something, and Microsoft supports VBA across their own applications, but it's not as fluid.
You are not alone. This is not normal. None of this is normal.
d00d!@ Rexx is the coolest thing ever! Write all your code in big REXX like you were a CONSULTANT at a BANK in 1988!!!
Man, I can't believe someone's still kicking poor old REXX around. REXX, the crazy computer lingo that won't die -- a deadly scripting language in the horrible tradition of DOS batch programs and JCL. Gar! It's REXX!
Back in the day, when OS/2 fanatics would get all uppity-puppity about how great OS/2 was, their SECOND most deadly comeback (after "You can format two diskettes at once! One in drive a:, and one in drive b:! Try THAT on a Mac/DOS/Windows/Whatever!!!") was that OS/2 had REXX. It was the ne plus ultra of PC-level scripting languages. It would stop a conversation cold.
I think the Amiga also had REXX, which, like, that's the kinda thing that Amiga folks still get all teary-eyed over. "I miss the Amiga! It had great VIDEO! and it had REXX!! Waaaaaah!"
Hey, so, can you still buy a computer with TWO floppy drives? I wonder. That'd be kind of cool to find one. It's kinda sad to think of all the computing manpower in the late 80s that went into making it possible to format two diskettes at once, and now nobody even HAS two floppies. Like, as if Project Apollo had been achieved, and then the moon fell out of the sky or something. Who cares! Why bother?
Oh, yeah, but anyhow: back to REXX. IBM has this great REXX site, chock full of links to other REXX sites and REXX programs. There were wack developer tools in the early 90s, like Watcom's VX-REXX, a VISUAL REXX. Of course, there's a link from this site. And IBM has, of course, a couple of crazy-ass updated versions of REXX, like for example Object-REXX (no shit!). The coolest one I can see is the new NetREXX, which compiles REXX to Java, which can be, in turn, compiled into Java bytecode for running in a browser.
Yay for REXX! REXX everywhere! REXX REXX REXX!
REXX was great for OS/2, but in Linux, between bash, perl, and tcl/tk, why would you need anything else?
This sig no verb.
Language Diversity.
... strong language evolution is best served by having a massive genepool.
... REXX may one day compete with CPAN, you never know ... ;)
There's no other reason. Your list could've stopped at perl, and it would still be a reason.
Its good to have diversity in your language choices, because different languages have different strengths and weaknesses, and having a good command of more than one can often make you much better, individually.
There's no reason not to continue adding scripting languages to operating systems
Or at least, so the theory goes. Of course there's the "pro at all, master of none" aspect to consider as well, but you never know
; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
Rexx is the embedded scripting language in the terminal program Zoc. This is the only windows client I've found that I particularly like and one of the main reasons I chose it way back in the day was because of it's powerful scripting language. I don't script muds anymore, but if I did I'd be glad for its continued existance. As far as using rexx for assorted small programming tasks I can't vouch for it, it's compromise between absolute simplicity and power/flexibility makes it fill the terminal scripting niche pretty well, imho.
I owe a lot to REXX. I used to love REXX. Back when I was a co-op at IBM I spent two years doing nothing but REXX on VM/CMS (note to youngsters: it was an OS for the 370 family). It paid for my car and a trip to Europe. But more importantly it got me used to scripting languages. After learning REXX, it was a small step to Perl (version 4.036). Since I learned Perl, I've never looked back at REXX. I'd be amazed if REXX hadn't evolved once it got off of mainframes, but I really doubt if it can do anything that Perl can't. They are both in the same nitch, but Perl has one thing that REXX doesn't: Perl is more fun. When everything else is said and done, enjoying your time at work is a huge advantage.
Life is too short to waste on REXX. Stick to Perl have fun.
- doug
REXX bites.
Yeah, I can see right away why I would want to write programs in this language. No object model. No regular expressions. Cobol-like syntax. This is more like BASIC (and not even the Visual variety) than Perl or Awk.
I know it may come off as such, but this really isn't meant as flamebait. I just really don't get why people would want to write new code in such a dreadful language.
(To be fair, I think the same of PL/SQL coders; but at least they have a good reason -- "Larry made me do it.")
the growth in cynicism and rebellion has not been without cause
Rexx is IBM's scripting language. Unfortunately I had to contend with it in a previous job. I advise people to avoid writing new code in this "language" wherever possible and relegate its use to supporting old code, perhaps that you have inherited from some defunct IBM dinosoaur.
Stick Men
I owe a lot to Perl. I used to love Perl. Back when I was working at a dot-com during the Bubble, I spent two years doing nothing but Perl on FreeBSD. It paid for my car and a trip to Europe. But more importantly it got me used to scripting languages. After learning Perl, it was a small step to Python. Since I learned Python, I've never looked back at Perl. I'd be amazed if Perl hadn't evolved once it got off past version 4, but I really doubt if it can do anything that Python can't. They are both in the same _niche_, but Python has one thing that Perl doesn't: Python is more fun. When everything else is said and done, enjoying your time at work is a huge advantage.
:)
Life is too short to waste on Perl. Stick to Python have fun.
Obligatory disclaimer to the _morons_ who are about to bitch at me, this is a _joke_. See the smiley face above? Laugh or move on.
Tcl was specifically designed for the sorts of uses which AREXX was used for. It's also much more lightweight than Bonobo could ever dream of being.
There are 10 kinds of people: ones who understand ternary, ones who don't, and ones who think this joke is about binary
Life is too short to waste on Python. Stick to Ruby have fun. :)
I mean, why type "def __add__(self, o):"
When "def +(o)" will do!
Imagine, if you add up all that time spent typing those extra letters, you'd have a few more years to enjoy!
It makes you wonder.. how many needless lives have been lost because of Python!
It's a shame! A DAMN SHAME I TELL YOU!
Not to spoil anything for you, but Python and Perl have this functionality with dcop modules. Plus, I can read Python and Perl code w/o much help. Besides, I can happily take a KDE app, script it in Python. Rexx-enabled stuff isn't found on my desktop. Dcop-enabled stuff is. Does Rexx speak dcop w/o using dcop(1), at which point you should be using the shell anyway?
My perception is that, these days, many people who use scripting languages tend to know two or three. One is generally bash/Perl/VBScript, and the other is a (for want of another term) "more modern" scripting language such as Python or Ruby.
bash and Perl are ideal for ripping together short scripts that do relatively simple things. The problem you often encounter with these languages is that it's hard to maintain scripts of more than a few hundred lines unless you're very disciplined in how you structure your code. VBScript on Windows sits in this area as well.
Python and Ruby fill the >100 line script niche by adding nice OO features. Python and Ruby scripts are generally easier to support than bash/Perl scripts once you get beyond a few hundred lines of code.
TCL seems to sit somewhere in the middle. I've never met anyone who actually uses it regularly, so I'm not really competent to slot it in anywhere...
Where does Rexx fit? Frankly, these days, it doesn't - these tools pretty much have the market cornered on both Windows and Unix platforms. New tools will emerge to split the "market" further, but to do that they'll offer some compelling extra feature to get people to switch. Rexx, being an existing solution, isn't likely to offer that compelling new feature.
The question Rexx advocates need to address is "Why would someone *switch* to my language?". In order to answer that, they need to be able to reasonably objectively discuss the pros and cons of Rexx vs. Perl/Python/bash/..., and I don't know of many Rexx people who can do that; they tend to know Rexx and nothing else in the scripting space.
I'm gonna make a new language. I'm gonna call it Diamond (cos a Diamond is better than a Ruby). It will be more elegant than Python, have more features than tcl and be easier to maintain than Perl. Then I'll be famous and the fame will masturbate my ego and make me hard. People will love me like Michael Jackson.
AppleScript on MacOS has a similar advantage. Alas, for some reason application-scripting languages (PL/SQL, REXX, AppleScript...) always seem to be the somewhat (or, in AppleTalk's case, /really/) icky ones.
I'd dearly love to see a common application scripting interface that was language independent. DCOP under KDE is nice, but we really need something universal. Ideally cross-platform, but with the entranched VB+COM/DCOM under Win32 and AppleScript under OSX, this seems unlikely.
It's the one thing I miss about MacOS.
Check out the website, www.rexswain.com. I've used it for its nice HTTP viewer and other web development stuff, but it has some useful-looking (I wouldn't know honestly) REXX info, pointers, and custom REXX tools.
I still dunno why I'd learn REXX, but if my name was Rex, I'd definitely learn it just for kicks.
At one time, REXX was one of my favorite programming languages. I could crank out lots of code in very little time with very little effort. I even wrote an entire GUI client application (OS/2 based) using Watcom's VX-REXX. After leaving OS/2, I longed for a suitable replacement for REXX. After trying several languages, I discovered Python which took over as my favorite. Although if I had to do it again, Ruby could well come out on top.
I have yet to find a suitable replacement for VX-REXX though.
For you former REXX fans, what language (if any) has taken the place of REXX for you?
I CAN'T PROGRAM IN REXX ANYMORE -- I LOST MY...
OH WAIT A MINUTE. THAT'S TERRIBLE.
SET CASE MIXED RESPECT
Ah, much better, let me try again.
I can't program in REXX anymore -- I lost my copy of XEDIT!
[ This text is here solely to satisfy the lameness filter's thing about uppercase text. ]