IBM Open Sources Object Rexx
dryeo writes "IBM has Open Sourced Object Rexx. IBM Announcement. Source code has been turned over to The Rexx Language Association under the Common Public Licence. Rexx is an interpreted language which has been included in platforms such as the Amiga, OS/2 and AIX, and most IBM mainframes. For a quick overview check out Rexx for everyone."
That is all.
A lot more information on Rexx can be found here on IBM's website. This is the main page and has links to courses, function libraries, etc.
1. Can't make any money from it
2. Doesn't benefit competitiors
3. Open
That's like 2 flamefests in one!
It's a dinosaur of a language .... Sadly NetRexx is just not the same thing.
..:(
..
Sad that it's still not GPL'd
After all it's only used on Mainframes these days
Quidquid latine dictum sit, altum videtur
I've never heard of it before. Does anyone have any personal experience with utility/quality verses other interpreted languages for Unix? I'd like ot hear some personal anecdotes.
Is there, for instance, any reason I'd want to use it on Linux?
I once developed (and sold) an entire jail booking system on Amiga 3000 computers using off the shelf products and tying them together with ARexx. Everything from mug shots to personal items inventory to tamper-resistant wrist bands with photos and bar codes.
IR-24 capture card, Art Department, Superbase & ARexx.
THAT was computing power!
-Charles
Learning HOW to think is more important than learning WHAT to think.
IBM is a traditional American company, and back in the old days, IBM managers hired people who were smart and were willing to work[1]. There are many instances of data entry clerks becoming full fledged programmers and even project managers. Rexx, which was invented by an IBMer in the 1960s (?), is a perfect match for this kind of employee. Rexx is very easy to learn. It has no pointers or references (ala Perl). At the same time, Rexx has powerful facilities for string manipulation since most Rexx programs are string-oriented applications like processing queries for a database. Every installation of OS/2 comes with Rexx.
Rexx could actually have precluded the need for Perl if IBM had open sourced it 20 years ago.
By the way, the inventor of Rexx became an IBM fellow.
note
----
[1] IBM traditionally refuses to hire anyone without American citizenship. This rule was relaxed to allow the hiring of permanent residents. Nonetheless, as a matter of corporate policy, IBM managers generally do not hire people with an H-1B visa.
Back in my mainframe days, Rexx was the replacement for EXEC and EXEC2 on IBM's VM system leading us to say:
"REXX is king of the EXEC's"
Thank you thank you. I'll be here all week.
You were mistaken. Which is odd, since memory shouldn't be a problem for you
Object Rexx is not the one used on IBM Mainframes.
Mainframe rexx is more like the (already open source) regina, only without the IO functions, and its been 'functionaly stabilised' (aka no new features) for a while now.
Personally I cant see much use for this Object Rexx, what they need to do is fix the error handling and data passing problems in the non-object Rexx interpreters.
**TODO** Steal someone elses sig.
Rexxcelent.
It had some odd quirks but it seemed like a pretty decent language. I worked in a shop that used it for some maintenance jobs, though nothing production. With the other languages out there now (and open) I don't think ORexx will catch any big waves, but it will probably help the odds-and-ends legacy shops. Hey, it couldn't hurt.
I'm sure "SlashdotMedia" will improve on all the wonders that Dice Holdings blessed us all with
but uglier.
I don't think that all my Rexx scripts that customized the WorkPlace Shell's Launchpad applet will migrate very easily. The WorkPlace Shell is the one piece of software that I would have like to have seen IBM release as open source.
Granted that Rexx isn't as useful as Eclipse is to most users, this is another great example of IBM's committment to open source.
For me it is also alot easier for me to convince management and legal to use code that are related to IBM ( a reputable commercial company ) or other companies that use the Commmon Public License than code under the GPL. No offense to GPL but a business reality.
I hope that this trend continues.
part of me wonders if IBM does this to spite the anti-open-source rants of McBride, or just because they believe it's the right thing to do and really want to...
Either way i really like it!
It's perfectly obvious that only liars and thieves eat grumblecakes, and those people go to prison.
Believe it or not, a few years ago I was working for this company in VA who was developing IVR and "database" solutions using REXX and Btrieve, on OS/2! It was awful. They had taken REXX, which actually is a half-decent (just half, though) shell scripting language and turned into an application development language! If you value your life and sanity, stay away from Rexx. IBM open-sourced it because (like OS/2) it was nothing but a cost center for them, and generated no revenue, and the project was likely going down in flames. My advice: Let it burn.
I was thinking about this the other day. I used to write REXX scripts on the Amiga (way way back) to integrate a variety of applications. DCOP gives quite a bit of functionality there and fits very nicely into the REXX paradigm (without an application ever having to explicitly know REXX is talking to it).
The power of rexx (or the arexx implementation on the Amiga) was that there was a unified scripting language available across applications from different vendors, I added arexx support into the version 2.0 of the image processing/paint software 'Photogenics' for the Amiga, and the beauty of this was you could script applications from different vendors with ease, so if you wanted to batch process a directory full of images and you needed to run the image first through Photogenics and then through (rival) Art Department Professional or ImageFX, you could do that easily.
Please read my Canon EOS tech blog at http://www.everyothershot.com
Is that the Irish version?
REXX is nothing like bash! Get a clue mods!
Rexx may be cool, but it is way uglier than Ruby. Ruby on the other hand, is way prettier than any other language. :-)
My point is that we use whatever language we happen to know and like. Having an IBM or Microsoft label to it does no good to me, if it's lacking compared to others. :-)
Atari Sux!
I did a co-op with one of IBM's software R&D groups in Boca Raton back in 1995 (just before they turned Boca the "Grave of OS/2")... at the time, Java had just been making waves with Netscape turning LiveScript into JavaScript (the bane) and the first baby-tiger book was hitting the shelves.
I recall that IBM had an entire crew of Rexx developers who spent most of their time crying into their coffee-machine cups of mirth about how they had developed a virtual machine, bytecode-based system "a whole decade before Visual Basic and Java."
It was a classic case of "we got their first and didn't do anything with it" that IBM was famous for throughout the 80's and 90's.
The project I was on, for example, had developed a web/CGI-based mail/newsgroup/PIM system that included (I kid you not) a 3D chat system myself and two other developers built as a Netscape 1.0 helper application. Mind you this was before Hotmail/Yahoo! mail/GMail were even on the horizon... They demo'd it a few times and then broke the team up... priceless...
Oh, look... my cup of mirth is getting low...
l8r,
Levendis47
--==[ AOL YIM ICQ : Levendis47 : levendis47@yahoo.com ]==--
Object Rexx is kind of new and allows integration of object oriented programs on different platforms. It works on many platforms AIX, OS/2 (had to put it in), the other windows, linux and solaris. It is a very useful tool and is backwards compatible with REXX. People with a more mainframe background will choose it over perl (which is unix based in its syntax). It's also useful for talking to AS/400s. There are a few of those out there.
I used to do CAD work on an IBM mainframe (1986) and the editor we used, xedit, allowed you to have macros in REXX, which was very handy for munging huge tab-delimited text files. Mansfield Software(?) came out with "kedit", an xedit clone for DOS. Now if they open source xedit along with REXX, I can finally stop using pico on Linux!
And _that_ reminds me of one of the weirdest quirks of Rexx: it has DYNAMIC SCOPE!! The variables you have access to from within a procedure depend on where that procedure was called from. How's THAT for wacky!
OS/2's desktop (workplace shell) was exposed as objects and was very consistant no matter how different parts were viewed. Unfortunately, modern desktops including KDE, Gnome, and Windows XP either don't expose the parts properly or treat 'the desktop' and CLI environments as if they aren't dealing with the same computer.
Without an OS that deals with the system as objects, I don't see the value of Rexx above any of the dozens of others out there.
(I'd like to hear from OS X users if the GUI/CLI split is there or if both are fully integrated.)
A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
Rexx
Lexx
"Reality is that which, when you stop believing in it, it doesn't go away." - Philip K. Dick
Obviously have never had to program in CLIST
At my first computer programming job out of college, I was required to write scripts that processed JCL dumps. the scripting language of choice, back then, was CLIST. It was the most horrid "language" I have ever had to program in.
Fortunately, IBM had just released the first version of MVS/TSO that included support for REXX. Unaware that this was a recent thing, I grabbed the offical MVS/Rexx reference book (an internal IBM publication at the time, I believe), and took a week to self teach myself REXX, and ditched CLIST.
When IBM had their Great Layoff of '93, they purged all of the contractors first. As I wrapped up my project to hand over to my IBM supervisors, a look of shock and amazement came over their faces.
IBM'er: "You, you... programmed this in REXX!!!"
Me: "Yeah, so? It was a lot easier to do it that way."
IBM'er: "But, but... nobody here knows REXX!!! What are we going to do?!?!"
I was floored. Because I had a Computer Science degree, I was able to master a simple procedural programming language on my own, with one flimsy, poorly written internal reference document, within a week. The IBM'ers, on the other hand, had no degree, and were totally dependant on internal IBM training and certification in order to understand anything as "advanced" as a new programming language.
That, my friends, is the power of a good University degree.
One of the nice things about REXX was the way it interfaced with (in my case) the mainframe's network functions. Back in 1989 (bloody hell that makes me feel old) I wrote a multi-user-dungeon in REXX one boring nightshift.
Matt
Thanks for the link, but where to download Object Rexx ?
Muchas Gracias, Señor Edward Snowden !
SLASHDOT: news for people who can't concentrate on work or have no life at all and got tired of yelling back at the TV.
Long before I learned Perl or BASH scripting, I used AREXX on my Amiga... and the thing that really made it TOPS was that a long list of applications has 'AREXX Port' where you could interact your script directly with programs. Ahh the good old days. I wish I had gotten a chance to use OS/2 ... I have a feeling I would have liked it.
- Brett
For a real blast from the past, check out the REXX FAQ that I maintained for a couple of years. Copies are still floating around the net, including here:
t
http://www.funet.fi/pub/languages/rexx/rexxfaq.tx
It seems so... old, I guess. But REXX itself was fun to use, and I spent a lot of time using it and writing applications with (and for) it. It was very approachable, a good way to learn basic programming concepts. It definitely rocked on the Amiga because it was so well-integrated with the system. If OS/2 had not failed, it might still be here, because it was also decently integrated there.
Eric
It's like the scripting complement to OpenCOBOL!
--
make install -not war
I would hate to sound like a typical Slashdot open-source cheerleader but I've been holding my breadth and I really think that this is trully great news even if not exactly "new" for anyone who knew what had been going on in IBM for quite some time now and the most important question is of course whether we'll see full implementation of Rexx in the next release of Parrot--we can hope so because as we know Rexx (or Restructured Extended Executor--one has to love the old-shool humour of IBM developers!) being a structured high-level programming language which was designed to be both easy to learn and easy to read will be a great transition path for anyone who will want to use the unimaginable power of future CPAN (or CP6AN) modules yet won't be experienced enough to fully master the equally unimaginable complexity of Perl 6 grammar yet. This is a very important step in the direction of Perl 6 which we are all looking forward to. One really has to admire the insight of IBM's developer--and indeed executves, let's give credit where it is due!--who perfectly understand that open source is good for them, at least those who I personally spoke to, but what is even more important for us, is that it is good for us as well. This is a win-win scenerio for everyone but Microsoft. Why? Because IBM is not a charity, they are not stupid, they understand that undermining .NET and C# is even more important that Java. A common and portable run-time environment is essential for companies like Sun and IBM and as always IBM is first to understand it. I can only say: Bravo! Keep up the good work! A big "Thank you!" in the name of the entire Slashdot community. Now let us see what great project will follow from that step. I can hardly wait.
Sincerely,
Pan Tarhei Hosé, PhD.
"Homo sum et cogito ergo odi profanum vulgus et libido."
Ha! The developer of the IVR system actually wrote a whole API in C that was callable by REXX to interface with the voice response hardware. That part actually worked quite well (for the functions that he bothered to test!)
Rexx was regarded as the best reason to buy OS/2 and I suppose all us nixiens ought to understand why a scripting language should trump a GUI (the Evil One's 3.1 offering back then). Now days it just reminds me of that naff sci-fi thing and of why I should buy one of those books about bash and do the job properly.
ISTR that rexx is pronounced like "recks ecks" rather than just "recks"
Can anyone confirm this?
-- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz
Well, let us see. If you are porting something from, say, Rexx to C you are either writing it from scratch - in which case the source code of the original program is inconsequential - or you are writing a Rexx->C compiler. In the latter case, would you not simply lower_case all identifiers?
Just seems to me, if one were assigned a project like that, case sensitivity would be the least of one's problems...
All interpreted languages are abstractions over Lisp
Sounds like a classic case of "The Innovator's Dilemma" - unlike a startup who was willing to risk on a disruptive technology, there was no immediate corporate customer interested in spending big $$$ on your system, so your IBM managers did the sensible thing and pulled the plug.
So Mike's excellent invention makes it to open source. Well done Mike, Well done IBM.
Sigs. We don't need no steenking sigs.
On the Amiga, applications support Rexx in two ways: they can be commanded using Rexx, and upon certain events they can be made to launch specific Rexx scripts. Rexx commands applications in a markedly different way from the normal UNIX way of working: it assumes the application is already running, and sends commands to make it do different things. If I had a mailer, a Rexx-script for it could look somewhat like this (I forgot the syntax, bear with me...)
ADDRESS KMAIL.0
# now commands are going to the first instance of kmail that is running. Now we'll create a mail. Rexx has highly convenient associative variables for this.
mail.address = "johannesg@slashdot.org"
mail.subject = "Rexx is bloody useful"
mail.body = "at least, if all applications support it"
SEND mail
# Now we will store that mail in our mysql database:
ADDRESS MYSQL.0
SQL INSERT INTO sentmail VALUES mail
COMMIT
And done! We have linked together two already-running applications, to make a new, unique solution.
Similarly, my mailer _should_ just run a Rexx script when mail is received. The script should decide what to do with the mail, which could be classifying it, testing it for spam, forwarding it to another account, or for all I care making an immediate hardcopy and faxing it to my holiday address. None of those functions should be built into the mailer; instead, the user can configure the scripts precisely for his own needs.
This has some major benefits:
- Tools can remain lean, concentrating on core functionality. As long as the Rexx-interface is powerful enough, and the right triggers are provided, any user functionality you can imagine can be added by interfacing other applications to it.
- Complex tools for a specific purpose can be cobbled together by throwing a few existing applications together with some scripting glue.
- The GUI becomes as easy to script as the shell is today.
Of course I am not saying Rexx is the only way to do this, and indeed the KDE people are already moving in this direction with DCOP (I think). However, I believe noone in the Linux world has yet realized how amazingly powerful and useful this concept is.
So in the end, this isn't about Rexx at all - it is about how incredibly useful the concept of scripting together sets of applications is. The language really doesn't matter, since the Rexx interface works on the level of exchanging strings between the script and the addressed application (i.e. it might as well be Perl, or Python, or Ruby, or ...). Rexx is only special because it did this so incredibly well on the Amiga that I still miss it on a weekly basis.
in Boca Raton back in 1995 (just before they turned Boca the "Grave of OS/2")
Not to sound stupid but wasnt that facility closed in the 80's?
Im dreaming ofa big bndwdth, That can resist the
It is, in fact what I am getting paid to do these days in translating Ada to C++. Ada that was written by multiple departed engineers over multiple years and never got in trouble for having package and variable names [and pretty much every symbol] with f**king random case usage.
Its a job!
Also, you can't just because you clobber quoted strings and comments.
Its an ugly job! [and indeed, case issues are only one of the headaches.]
SLASHDOT: news for people who can't concentrate on work or have no life at all and got tired of yelling back at the TV.
The power of (A)Rexx was in inter-process communication.
On the Amiga, most software had an Arexx 'port' (IPC hook) which would allow you to use Arexx as either a client or server (running Arexx scripts, and allowing Arexx scripts to control the software, and call other programs.)
Think about a scripting language embedded in *every* application on your system (with no extra overhead) that allows one application to call another.
A real-world example: Your favourite text editor - you add a hotkey to call a script. With one key, that script saves the document (if necessary), runs a compiler, then parses the compiler output, displays a window showing the result of the compile, and if there were any errors, scrolls the document to the error and places the cursor over top of the error ready for editing. A full-fleded IDE, that uses the components *you* want it to, mix-and-match style.
Unfortunately, the applications have to be adapted to use such a tool, so much of Rexx's power is lost on Linux.
"Solutions" is annoying as hell, smarmy salesdroid-speak. Just say IBM is in the *service* business, and be done with it.
I hope they don't think that they are going to get karma from open sourcing stuff that they just find laying around I mean sure it's useful but really it doesn't take anything of IBM to give it away. It's kinda like it's not really doing charity if you give something away that you were gonna throw away.
Your CPU is not doing anything else, at least do something.
No, it was closed in the Spring of 1996 sans for a very small group of OS/2 Warp support techs who were later moved to Austin, TX. At that point the majority of their OS/2 customers were owners of point-of-sale/warehousing devices that used the OS (grocery stores, warehouses, etc.)
When I was there, I'd say that ~50% of the facility was mothball'd due to the abysmal performance of OS/2 and related PC-OS/Software products. The remaining areas were either supporting said product or conducting random internet/web/hardware R&D work.
They've recently reopenned Boca for Websphere dev, I believe... I'll have to ask a friend of mine who's in Poughkeepsie...
By the time I left in Dec of 1995, I'd say half of our developers were using Windows 95 on their PC's (HA!). Most of my work was done on AIX or Slackware. Tho an interesting note was that it took only about two weeks to port our Doom1/2-like 3D engine from AIX/Linux to OS/2 using the OWL development tools. Hardest part was getting direct-write access to the OS/2 window's graphics context.
Anyway... I now babble...
time time time, see what's become of me,
Levendis47
--==[ AOL YIM ICQ : Levendis47 : levendis47@yahoo.com ]==--
Actually, solutions are to services as custom-made products are to assembly-line products.
Instead of offering a service that a customer will decide whether or not they need it, a solution offers everything to achieve the list of goals a client requires.
The Penguin Producer
REXX (and then Object REXX) was my favorite high-level language (especially for scripting). With the demise of OS/2, the existence of Object REXX on other platforms was not freely available and so I didn't have access to this tool that made me highly productive for some situations. After searching for a decent Object REXX replacement for a number of years, I finally found Python - which I found to be a good replacement. Like Object REXX, Python has these benefits: (1) strong string handling capabilities, (2) easy to learn and use, (3) can be used from very simple scripts all the way up to full-blown apps (including GUI apps), and (4) very readable and maintainable (perhaps the most important benefit).
Given the similarities between Python and Object REXX, I now wonder if there would be any compelling reason for anyone to pick up Object REXX as a new language. Sadly, many will see it as a "fringe" language and may never even consider it.
4758 Secure Coprocessor Driver for Linux
This project is a Linux device driver for the IBM 4758 PCI Cryptographic Coprocessor, which is a tamper-sensing and responding, programmable PCI card. It provides a highly secure subsystem in which data processing and cryptography can be performed.
ATM on Linux
ATM support for Linux is currently in pre-alpha stage. There is an experimental release, which supports raw ATM connections (PVCs and SVCs), IP over ATM, LAN emulation, MPOA, Arequipa, and some other goodies.
Abstract Machine Test Utility (AMTU) for Linux
Abstract Machine Test Utility (AMTU) is an administrative utility that checks whether the underlying protection mechanism of the hardware is being enforced. This is a requirement of the Controlled Access Protection Profile (CAPP) FTP_AMT.1.
Ananas Project: Summary
This is the source for Working XML, a column on developerWorks with companion project code that demonstrates the evolution of full-fledged XML applications. This is distributed under the artistic license.
Apache HTTP Server
The Apache project develops and maintains an open-source HTTP server for various modern desktop and server operating systems.
BlueHoc simulator
BlueHoc is a tool that predicts the performance of Bluetooth wireless hardware technologies. BlueHoc simulates the baseband and link layers of the Bluetooth specification.
COIN (Common Optimization INterface)
Developers can use Common Optimization INterface (COIN) to build optimization solutions. IBM mathematical optimization researchers opened the code they use in finding the optimal allocation of limited resources. The code has many applications in a variety of industries.
Channel Bonding
The Channel Bonding project works on methods to join multiple networks on Linux into a single logical network with higher bandwidth. The project team works with the Beowulf Ethernet Channel Bonding project, where bonding work began.
Consensus prototype
Consensus is a joint European project carried out by six companies. The project is partially funded by the European Commission. The project goal is to provide technology to support single-authoring for mobile devices. developerWorks hosts the open source implementation developed by the Consortium. Detailed information about the project is at the Consensus Project home page (http://www.consensus-online.org).
Content Query System (CQS) Project: Summary
Content Query System (CQS). CQS is a distributed peer-to-peer query system for the purpose of discovering content or data. XML messages are passed between systems and query "engines" are used to access the data that is being made available on the system.
Crypto Accelerator Driver
Device Driver Support for the IBM eServer Cryptographic Accelerator.
Crypto Interface Library
Generalized Interface library for the IBM eServer Cryptographic Accelerator Device Driver. Note, this is a low level api for the Specified adapter, it is not intended to be an interface which is written to by applications. Applications should use the openCryptoki PKCS#11 api for interfacing to the token.
Dynamic Probe Class Library (DPCL)
DPCL is an object-based C++ class library that allows tool developers and sophisticated tool users to build parallel and serial tools using a technology called dynamic instrumentation.
Embedded IBM PowerPC 4xx Linux Support
This project contains packages which enable adding support for IBM PowerPC 4xx Embedded Processors to
STFU about slashdot bias.
I'm not sure if we beat IBM to the virtual-machine/bytecode party but when I used to work at Micro Focus, a COBOL compiler company, in 87 we'd already been running with such a setup since 1978 or so. The INT code as we called it was based on a 64bit (or maybe 32bit - I'm fuzzy about the first version it was over 20 years ago) abstract machine which more closely matched up with IBM mainframes for compatibility. The was a second 'generator' stage to convert it to the native CPU (be that x86, 68K, i860, 88K or whatever).
There was even some talk of Sun using the mature MF Abstract Machine for Java bytecode. That would have meant you could mix Java objects and COBOL objects and benefit from MF's template based native code generator. A lot of the Object COBOL work was based on Smalltalk at the time.
I'm pretty sure pCode in Pascal beats both by a few years though and for that matter Smalltalk. And ANDF maybe beats Java also.
Sun certainly weren't the first.
If I remember correctly IBM wanted rexx to be embedded into some of M$'s products but instead ey chose visual basic and basic's relatives. I have never used rexx but I wonder if rexx is better than a hacked up version of basic.
My UID is prime is yours?
Now if Sybase could be pursuaded to Open Source the VX-REXX language that they acquired when they bought the Watcom product line...
VX-REXX was a neat tool for writing visual REXX applications in a REXX dialect for OS/2 in the '90s. It died when Sybase bought the Watcom portfolio. Since Sybase released the Watcom C++ compiler under an Open Source license (http://www.openwatcom.org), they just might be open to this.
Nice. Flame using your slashdot name.
Excellent for your karma.. dicksmack!
will IBM open-source IBM DOS?
I was reminded of this, because REXX used to be part of IBM DOS (too).
Many of the icons for OS/2 Warp were designed by Susan Kare, who also designed many of the icons for the original MacOS and for Windows 3.x...
Here are some of the Warp icons she created for IBM.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
My former colleagues paid $1000 for a closed-source Rexx (which they use for doing numerical calculations on a UNIX workstation - go figure) despite the fact that I sent them a copy of Regina Rexx.
Now that IBM Rexx is Open Source they're knackered. Maybe they'll port to Visual BASIC on NT4, which is the current company standard?
Stick Men
Guess she had to learn the job somewhere.. ;-) But imho (and I've heared that a lot those years so I know I'm not alone here) the whole first impression was stinking. Even something simple as turning on the lining up of icons would already have helped.. A half decent wallpaper. Just some default settings. Oh well.. water to the sea and an other piece of history.
Nobody expects the spanish inquisition!
I wrote my first server program using Rexx on an IBM mainframe running VM/CMS. It used BITNet (RIP) to serve messages like RELAY (not unlike IRC, but with channel numbers instead of channel names) and to serve files. It had a plug-in architecture for it so you could write text-based applications (okay, games!), and I could even update it remotely and restart it running the new version without anyone else even noticing except for bugfixes and new features appearing as they used it. This was 1988 or so.
It was a lot of fun. Gotta give it up for IUCVTRAP and Rexx working together.
I first learned REXX on the VM/CMS operating system on good old IBM big iron in 1984. I thought it was so cool and easier to use than the other scripting languages at the time. If IBM had added some portable OS independt I/O routines and possibly added regular expressions in addition to the template parsing they had, I would argue strongly REXX would be the number one scripting language as opposed to Perl/Python/TCL or anyting else you can name..
This is a great language that IBM knew was useful, but never fully realized what they had.
Hey, I had a similiar experience. I learned REXX on a VM/CMS and then got to use it a little bit with DOS. When I went to UNIX, I switched to Python because it seemed more like REXX to me (readable!).
I haven't seen anything like that in Perl. You have to write a separate program that does some form of IPC to talk back to the program that invoked the script.
The criteria was not that IBM once sold a product, but that the product was profitable.
Let me give you a counter-example:
IBM bought Rational a couple years back. This included not only Rational's main testing software, Rational Robot, but Rational Visual Test, a low cost testing product with a large following.
Shortly after acquiring Rational, IBM stopped selling Visual Test. Not only did they not release the source, but they won't allow anyone to even distribute the binary. Why? Because VT is a bargin that threatens their overpriced testing suite.
So, I return to my previous point. IBM isn't serious about open source not matter how much unprofitable junk they release.
....Regina
So, I return to my previous point. IBM isn't serious about open source not matter how much unprofitable junk they release.
If we understand the essence of your comment, Mr. Schwartz, you believe that a product that is release under a Free Software license is by definition "unprofitable junk". Opinion noted. Thank you, and have a nice day.
Sorry, I don't get the Mr. Schwartz reference.
I didn't say that all Free Software was "unprofitable junk. Distortion of my post noted. Thanks for the disinformation.
You keep using that word. I do not think it means what you think it means.
Ceterum censeo subscriptionem esse delendam.
I have to ask, is this company a provider of (dis)services for credit unions? If so, is it ICSI out of Overland Park, KS?
A company called ICSI used to provide our dataprocessing on OS/2 and used REXX to interface to a PVR (with C & COBOL programs in between).
Just curious... they were awful to have as a provider of anything.
Although, our CU ran on a Gateway PC with 128MB RAM (scary) and OS/2 without any problems, other than the PITA it was to work with ICSI.
thanks
You can't do it with an awk script as simple as that, but a proper tokenizer that can detect quoted strings, comments and other quirks cannot be that much longer. You do remember something from your university compilers class, don't you?
Confucius say, "Find worm in apple - bad. Find half a worm - worse."