Back in November 29th last year, IBM and the Rexx Language Association announced that "after several months of negotiations between RexxLA and IBM, the company agreed to further their commitment to Open Source, by releasing Object REXX to the Open Source community". The "Open Object Rexx" project, which is the open source version of IBM's former commercial offering is managed by the RexxLA. As a result of this move, IBM's Object REXX was withdrawn from the company's product line.
T-Rex? say what?
Anyone who is 30 years old or older might vaguely remember what Rexx is. It's an interpreted programming language, one which gained widespread recognition among desktop PC users only after it was bundled with IBM's first 32-bit OS/2 version (OS/2 2.0) back in 1992, and bundled with every OS/2 version released since. Few know, however, that the Rexx programming language was designed and implemented by Mike Cowlishaw, an IBMer at the company's labs in Warwick, UK. He's also "an elected Fellow of the Royal Academy of Engineering", and a professor at the University of Warwick, according to his web page.
Much earlier, the Rexx language was licensed by Commodore Business Machines, re-named "ARexx" and used extensively in its Amiga line of 16-bit and 32-bit computers, where it was used as a "glue" to script several applications together. That used the concept of "Arexx ports" to listen for commands from other Arexx-enabled applications. But of course, the longest Rexx programs were never public and were coded inside mainframes or other IBM iron like the AS400. You might be surprised to find such activity continues even to this day.
I am a thirty year old dinosaur
Right after what is now considered 'traditional' Rexx, Mike Cowlishaw also developed two other Rexx-based languages: NetRexx, which allows Rexx programmers to create java programs and applets for the Java environment more easily than by programming in Java, and "Object Rexx", the object oriented flavour Yet, most people still prefer to use the 'traditional' Rexx today over the newer flavours, and when they do, they use an Open Source implementation that has been around for ages: Regina Rexx, which is ported to Windows, Linux, OS/2, and other OSes and has a small yet loyal and active development community. Take Mr. Hessling's array of Regina Rexx extensions, for instance.
So why did people prefer an independent, traditional Rexx instead of IBM's top-of-the line commercial product? Why didn't "Object Rexx" win a huge following?. Well, it would have been a mild success rather than the current "drop in the ocean", if IBM had put more money into its development, had IBM lowered its price, and had IBM put more commitment into it. Finally, it would also have helped if it had released the same set of features across a wide range of operating systems. But can't the same be said for a plethora of IBM software products like Viavoice, VisualAge for Basic, IBM IC Phone, SmartSuite, Lotus Notes?
Instead of that, it offered the first version free, by bundling it with IBM OS/2 Warp 4.0, virtually stopped development on that platform, and at the same time, continued development focused almost exclusively on the Windows NT platform. To boot, those windows versions often carried ridiculously high price tags, as you can still see today using any price search engine.
Common sense, it's heard of it
In a sense, opening the source code of Object Rexx was just a matter of common sense. Delivered late. Why would anyone spend a three digit figure for a proprietary interpreted language - no matter how good - when you have a number of free and/or open source choices like Perl, Python, Php and Java? <>p>I'm sure that Object Rexx will do much better out of IBM's hands. The same of course would apply to dozens of abandoned IBM software like OS/2, Voicetype, VisualAge for Basic, IBM IC Phone, SmartSuite, etc.
Hey, don't get me wrong: there's still life in Rexx-land, however. The RexxLA announces that it will host the "2005 International Rexx Symposium" at the Palos Verdes Inn in Redondo Beach on the U.S. West coast from April 18th to April 21st. And a new Rexx book will be published during 2005, titled "Rexx: Programmer's Reference" written by Howard Fosdick and to be published by John Wiley & Sons during this February. The book can be pre-ordered on Amazon.
Nine years ago, I wrote my first Rexx program under OS/2 to learn the language in the process. It was called "I Curse You" and generated random cursing, in Spanish, that could be pasted in the middle of any "flame war" on the internet because of the generic nature of every sentence. Programming in Rexx was a lot of fun, and I surely miss the string manipulation routines from time to time. And when I do, I head back to Regina Rexx on both Linux and Windows.
Will the new generations even bother to check out the new "Open" object oriented Rexx? While I personally can't vouch for the wisdom or quality of coding in Open Object Rexx, I surely recommend you use some of your spare time to visit the Rexx museum by checking out Regina Rexx on your favourite Linux distracts or Windows flavour. Me? I will just sit here remembering the good old times and every time I see someone rant about the new scripting language of the day, I will raise my angry fist like Abe Simpson while yelling "kids these days don't know what a good interpreted programming language is." IBM execs? they're the only reason why I keep IcurseYou.cmd on my hard drive. This South American version of Abe Simpson never knows when he might need to email some 'compliments' to an IBMer about the company's software strategy. µ
The Rexx Language Association
Mike Cowlishaw, "father of Rexx"
Regina rexx, a cross-platform, open source "traditional rexx" implementation
The new 'Open Object Rexx', open source version of IBM's former ORexx product
The Open Object Rexx web page