Rexx Is Still Strong After 25 years
therexxman writes "March marks the 25th anniversary of the Rexx programming language, and to celebrate the Rexx Language Association is hosting the 15th Annual Rexx Symposium at the IBM Research Labs in Boeblingen, Germany, from May 2 to 6, 2004.
Full details of the Symposium can be found in the 2004 Rexx Symposium Announcement.
Many of the world's 'Rexxperts' will be in attendance including Rexx's founder, Decimal Arithmetic guru, and IBM Fellow, Mike Cowlishaw."
toast
PHP is the solution of choice for relaying mysql errors to web users.
Ohhhh that's a good one! Clever buggers.
I thought it died off 65 million years ago.
but it's no FORTRAN.
The "Insert Quote Here" line is almost as predictable as inserting an actual quote.
Never heard of it.
Seeing is believing:
Rexx going strong.
Quem a paca cara compra, paca cara pagará.
Which is better?
Sex with a Rex
Sex with a Mare
Therefore I believe the Rexx is overrated and I would recommend against it. Just my two cents.
punch-card lovers association held its annual conference and proclaimed punch-cards superior to all modern IDEs, compilers, editors and debuggers.
deja vu...
I'd never heard of REXX before. Looking at the FAQ, I found my explanation:
This FAQ is for REXX/MVS, that is, REXX for IBM mainframes (MVS, OS/390 and VM).
Okay... but is this language at the forefront of modern computing, or even close to it? That's not a cynical inquiry; I'd literally never heard of this language before and I'm curious to know whether it's making some kind of progressive, hidden impact that was just totally unknown to me.
Anyone? Anyone? Bueller?
The coolest voice ever.
This reminds me of wasting hours and hours on my Amiga500. Yeah, it only had 3MB of RAM and no hard drive, but give me a blitter chip and four channel audio any day! Anyway, there was a great version of Rexx for the Amiga that became the defacto scripting dialect of the day. Great stuff, that aRexx.
The CB App. What's your 20?
----------
Create a WAP server
it wants its do loops back
say "Counting..."
do i = 1 to 10
say "Number" i
end
Yuck!
at least, back when i was using OS/2. When started with Linux, perl seemed very ugly and unintuitive to me (specially when comparing how text is parsed in both languages), but it was so easy to use the output of other programs (compared with REXX even under linux) that I finished to like it and using it for everything instead of REXX.
It was funny then and it's funny now.
GET YOUR WEAPONS READY! --DR.LIGHT
so rather than rewrite everything, REXX programmers just keep modifying the original code.
I can't say that sounds like good software development practice to me. Is all mainframe code just a big liability?
you really had nothing better to do with your time than post that eh?
go read a classic novel or something. sheesh.
I think it's great that a language has survived so long. That being said.. although it has it's purposes, it'd be hard to say that it is "strong". It may be used. It may be actively developed. However, "strong" is probably an overstatement.
Who could forget ARexx, Amiga's implementation of REXX... I scripted EVERYTHING from DirectoryOpus...
:-)
Sigh... I miss my Amiga.
punch-card lovers association held its annual conference and proclaimed punch-cards superior to all modern IDEs, compilers, editors and debuggers.
... umm, no hardware failure, and zero down-time (if the sun is shining).
Punch cards are all good and fine.
But if you want real power in a computing machine, what you need is something like Stonehenge, which has the advantage of
-kgj
-kgj
I still use Kedit, a win32 programmer's editor, that uses Rexx as the macro language and it rocks (both the editor and the macro environment). Even though Mansfield software has quit supporting Kedit about a decade ago it is still the best editor on the windows platform. I tried switching several times - first to Brief then to Codewright and then Slick edit but came back to Kedit because of if clean interface and performance.
I send mansfield an e-mail every so often requesting a Linux version or ask to open source the code but they just ignore me. Kedit would be a good replacement for vi on linux.
Any other Kedit fans out there? BTW not to be confused with the KDE based editor by the same name.
You mean the stall with the bloody tampon in it?
Though, being a Linux noob, somebody properly thought of this already.
But come on, look at the syntax! With a little work, this thing could replace even tsch!
Bah, who am I kidding, what right minded programmer would code such a thing:P
br
Rex is one of the bext scripting languages ever... Just like OS/2 is one of the best OS's ever. The problem is that IBM was clueless at the time and couldn't figure out what to do with it. Wait... We are talking about Rexx...
hey I've seen rexx.. in fact, how many other slashdot geeks here can claim their girlfriend makes a living coding rexx af/operator functions for os/390 (among other things).
Ahhh Rexx... OS/2...
OS/2 is the future I say. Look at how much better it runs then Windows 3.1....
*snaps out of reverie, back into Microsoft dominated 2004*
Doh!
"Nobody knows the age of the human race, but everybody agrees that it is old enough to know better." - Unknown
You guys were no help. I'm going to go grab some random thing out of the fridge.
I doubt whether academics see much to love in the language, but I always found it easy to learn and very effective in getting things done. On the few occasions I have used it in recent years, I have still considered it highly useable (and I speak as someone who has used Perl, Python, Lua and even occasionally Ruby).
According to the article,
"REXX is a procedural language that allows programs and algorithms to be written in a clear and structured way."
At least one of the implementations has been ported to tons of platforms and, to me, it doesn't seem to be dead.
Wrecks is still strong after 25 years of using Microsoft software. This is what a life of using Windows will eventually get you. On the other hand... if you use Linux even for just a few years, you'll get a lot more of this on a regular basis. Make the switch and get some hot goth girl ass.
Other mainframe scripting languages were just disasters. I vividly remember replacing more than 1000 lines of EXEC-2 scripts with about 100 lines of REXX, and thinking that Mike Cowlishaw should be knighted.
:-)
And REXX beat ksh hands down in terms of power and readability as well.
I gave a speech ~ 1991 at a REXX Symposium about "REXX in UNIX". I had the crowd of mainframe and OS/2 people literally rolling in the aisles with laughter as I tried to explain ksh syntax to them. I made slides of some examples from the appendix in the KSH book, and it was hilarious. Even the geekiest UNIX geek has to admit that sh / ksh are disasters as programming languages. REXX was 10000% better.
On the other hand, as I pointed out in my speech that day, there was another new language coming up that was 20000% better. It was called Perl. Perhaps you've heard of it.
REXX was originally intended to be a scripting language simple enough to allow non-professional-programmers to use. None of the UNIX scripting languages, including Perl, hit that mark - but REXX does.
I haven't written any REXX in 10 years, and haven't missed it. But it WAS a big step forward, and should have been a better success.
REXX was very much like the Python or Perl of its day, in that it is a scripting language which can be used for everything from job control to add-on macros to interprocess communication.
It is a completely typeless language, more or less -- basically, everything is a string, so the same variable could hold "87", "eight-seven", "00110111", "0x0117", or "Four Score and Seven" -- and the interpreter kept track of what operations were meaningful (i.e., adding "4" and "5" would yield "9", but adding "4" and "Five" wouldn't). Not surprisingly, it had a wide variety of string manipulation functions built in -- ROT13 could easily be accomplished with one command ("translate()"), for instance.
On the other hand, it also featured arbitrary precision mathematics, which is a pretty nifty and not altogether common feature for a language.
It was fairly portable -- I wrote REXX code for OS/2 and the Amiga, and was usually able to move the code from one to the other without having to worry about anything more than CR/LF translation. I was able to make use of old mainframe REXX code too, although it was usually ALL IN CAPS and ugly, which isn't really REXX's fault.
In OS/2, I used REXX primarily as a batch language on steroids (the OS/2 "CMD" CLI ran REXX programs directly as a batch language), but I also used it to do some pretty heavy text manipulation as well. On the Amiga, I used REXX for those purposes, but the main things I used it for were for interprocess communication, and for extending the functionality of REXX-enabled programs. When Matt Dillon added a REXX port to his hacked-up version of emacs for the Amiga, I was able to use REXX macros to turn it from a nice programmer's text editor into one which did everything I wanted, excatly the way I wanted. I wrote macros to toss and filter FIDONet messages to and from my text editor.
The same power was available to the REXX ports on other Amiga programs, from word processors to graphics editors. As an aide to interprocess communication, it could be used to allow your graphics editor to control a raytracer, or for your text editor to use the spellchecker in your word processor.
I made some nice money at a time when I was underemployed by writing REXX programs to control the input and outputs of a NewTek Video Toaster for a guy with a mid-sized video production business; and the code was straightforward enough, and REXX easy enough to learn, that the business owner could easily make any minor changes to it himself (at the same time, after he had used it for a while, he was able to think of more and more things for it to do, which kept me in groceries for another month or two). For that matter, I also made a bit of money writing a REXX programming column for an Amiga magazine, so I really have fond memories of REXX for being a language that allowed me to continue, well, eating food.
For a long time, IBM tried to convince Microsoft to use REXX as the macro language for Office, instead of BASIC; needless to say, if they had succeeded, we would be living in a universal paradise of peace and understanding right now, or something like that.
Even today, I find myself thinking of all the neat things I could easily do with OpenOffice or AbiWord or Photoshop or Semware's text editor or Audacity or Zinf if they had REXX ports enabled...
At first I thought the title read Rexx is Still Wrong After 25 Years.
I was like, "Damn straight!"
Cheers,
Justin
You have to give it a break. Nobody said it was gods gift. The best hackers are versed in obscure languages ... or were ;) ... some of the most interesting realms exist only to people with knowledge of things we have no knowledge of.
I'm just saying you can't go comparing it to modern languages or you are just doing it for the sake of comparing.
I work at a back where we have a Siemens Mainframe (BS2000) and use Win 2000 machines with Logics (a terminal emulator for the 9720's BS2000 machines use).
...So it's nice to see REXX is still going :)
Back at Y2K when we didn't have too much to do (being at work only watching the blinkenlights) I wrote my own interface to BS2000 in REXX to bypass Logics.
Ok, the thing isn't perfect; the terminal emulation sucks (it's not 3270 and info is very hard to find). I never perfected it. The little REXX routines do their jobs well enough and I'm too lazy to beg Siemens for manuals which describe terminal emulation.
I now use cygwin and call REXX scripts from within a bash shell. A great way to automate lookups on the mainframe: the output of my REXX scripts gets redirected in cygwin and I can grep/awk/sed/perl for what I need.
http://regina-rexx.sourceforge.net/
for those who want to give it a try.
ps: don't forget rxSock for sockets in REXX
Just let me know when they hit LEXX ... Now thats something to look forward to =)
On the other hand, as I pointed out in my speech that day, there was another new language coming up that was 20000% better. It was called Perl. Perhaps you've heard of it. :-)
I don't really agree here. REXX is a free form shell scripting language and stomps on everything else I have used for that purpose and that includes perl. You can write a simple sequence of commands with virtually no syntactic clutter and incrementally add expressions and control structures. With REXX, one can effortless take a program across the entire practical range of tranditional Unix shell languanges and far beyond.
Perl, of course, is more powerful but it is not really a shell language. It's syntax is more complex and gets in the way when you are trying to mix control code with command calls.
I still write bourne shell scripts. I also write awkward "shell" scripts in perl. But I would rather use REXX.
Of course slashdotters have to rip on anything that wasn't written originally for linux or isn't open source. REXX was a great tool in its day. Shit, I would still use it over the vast majority of scripting languages today.
Any man who afflicts the human race with ideas must be prepared to see them misunderstood. -- H. L. Mencken
See this pdf document here (page19 - left column) "REXX is a procedure language (IBMspeak for scripting language) popular in the IBM mainframe world. It is simple to use, powerful enough to do the job, and well suited to the type of processing done within OnWeb. REXX is OnWeb's "native" language, and OnWeb contains its own built-in REXX interpreter."
NetRexx is just your normal Rexx, but it compiles into Java byte code:
Net sa best, mar it koe minder
I think, perhaps the real question you are asking is: are IBM mainframes at the forefront of modern computing, do they have a hidden impact the average Slashdot reader is unaware of. My guess is yes. I am not a mainframe guy myself, but it is my understanding that they are still very much used and very important with a fairly large worldwide market. Perhaps some of you REXX folks can give us some examples of the ways mainframes are still used? I'm too lazy to go look up IBM's sales figures for mainframes last year, but I'm guessing it is bigger than many people here realize.
- None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
Many of the world's 'Rexxperts' will be in attendance
Such as Rooby-Rooby Roo.
Sorry, the subject is the extent of my witism.
does it do DOT NET?????
10 ?"Hello World" life was simple then
WHen I started my first job , to work on Airline Applications - TPF based, on VM/CMS - I started using REXX. Then, at times, whenever I required a particular action on CMS file(s), I started writing REXX EXECs to do it for me. Although my demands were not that tough, as most of the times it was only to help me save my time while working, I found it extremely easy to write EXEcs. And I had no formal training in REXX. For me, its easy to understand the REXX commands/syntax. As I have no experience on Perl or whatever other stuff that you guys may be discussing, I am not in a position to compare REXX with anything else. But I like REXX and I am happy to see that it's still doing the job for me.
Good lord man, that was funny.
Your hybrid is not saving the environment. Its purpose is to make you feel good about buying something.
Stupid mods, ahoy!
Back in 1995 my first IRC client was written in REXX, running on IBM 3090 machine. I learnt Rexx tweaking it. C'mon guys... isn;t infinite loop declared by 'DO FOREVER' beautiful?
IBM REXX lives. You can pronounce that two ways
Baz
Maybe this language is alive now, but in thirty-two years, it will be extinct, and we will have to send time-travelers back to unearth it's powerful secrets!
We can neither love nor pity nor forgive. If you make a slip in handling us you die!
Wasn't Cowlishaw also a (the?) lead developer for the IBM internal newsgroups (which were called "forums")?
you really had nothing better to do with your time than reply to that post eh?
go read pr0n or something. sheesh.
You have bloody tampons in your fridge ?
Any compelling reason to use REXX when we have awesome scripting languages like Ruby 1.8?
After migrating from Perl (great regex & text processing) to Python (easier to maintain larger scripts/projects) and now to Ruby (best of Perl + Python), we're not gonna bother switching yet again unless there are very compelling advantages.
Rexx, and Model 204 User Language, were the only two computer languages that ever made programming IBM mainframes FUN. (At least until now, when Linux runs on IBM mainframes.)
-- SKYKING, SKYKING, DO NOT ANSWER.
strange brew that's good for you.
Good Dog.
${YEAR+1} is going to be the year of Linux on the desktop!
Hey...
That would be ARexx Symposium 8)
Incidentally ARexx is still included in AmigaOS and is part of the 4.0 version of the operating system. Not that it has been updated, but it still works great.
I thought FORTRAN had been written in every subsequent language...
well done.
IBM (and now Apache) project, Bean Scripting Framework, or simply BSF, allows embedded REXX scripts to still be used in Java programs. This is one reason why I (and others) still use (and maintain) REXX scripts from upwards of 20 years ago -- they still work, and nobody around knows what the hell they are trying to do :)
MORTAR COMBAT!
Secondly, and I'm not going to comment on Rexx excpet to say that it looks simple but it is a complete langauge once you get in to it (Python is dismissed the same way at first and then people use it) but what I find really striking is that the need for a universal scripting language was so solidly recognized 25 years ago. IBM had put rexx everywhere they go, you can download rexx interpreters from them for Linux. Within their software world, if you have a macro extension language, it's usually rexx, if you need to do something on any one of their platforms rexx is ususlly there (I don't believe AIX ships with rexx, it being the one exception but you can get it) It's impressive. I look at KDE and GNOME and Linux in general; the installer is python, the start up scripts are bourne, the automatic rpm downloader is perl, the few apps that allow plugin macros all do it differently, some might use perl, some might use python, some might use tcl, some might use their own languages; it's enough of a nightmare that people don't actually do it that much. (Think early 90's, the word processing wars and spread sheet wars were largely based on executing macros) Rexx is "good enough" and then they deployed it everywhere. Maybe the macro culture was a bad thing from a support aspect; I tend to think it was a good thing for business.
then use :cn, etc
you're welcome
Nice to see that people are still using it. But, like Applescript, it is most useful when lots of applications support it. Because it doesn't really have that support anymore, it is pretty much useless on the "Big Three": Windows, MacOS 10, Linux x86.
If you're looking for a simple scripting language, look at Tcl. The newest Activestate 8.4.6 release has a bunch of great stuff in it, but still support all the classic functions.
Fred
"A fool and his freedom are soon parted"
-RMS
Wow. This article brings back some fond memories.
You know you're a geek when the mention of a language from your past fills you with warm fuzzies.
Back in the old days (for me), when I was unable to get Unix for my PC, I went out and spent cash money on PC-DOS from IBM, just so I could get Rexx. The coolest part was that command.com had been tweaked by IBM such that the any .bat file that started with a Rexx comment would be interpreted by Rexx when invoked (instead of the grungy batch language everyone else had).
It was pure heaven to have a real language to script with under DOS.
Ironically, my company is slowly being encouraged by some of our potential customers to be more big-iron friendly. They want our new-fangled Java stuff, but the more we play nice near mainframes, the more pilot projects we win. I'm now able to use my mad COBOL and Rexx skillz for real.
Who knew?
-- clvrmnky
Mike Cowlishaw is also responsible for Java on the AS/400 (iSeries), and probably a major factor in IBM's interest in Java back in the JDK 1.0 days.
Chip H.
Oh yeah, doin' the REXX on the VM system at UMR in 1986, woo! The school sucked, but that was fun.
I'd kill for FLIST & REXX nowadays. FLIST was the best file manager _EVAR_. For awhile, some UK company was working on FLIST for OS/2 (back in my OS/2 days), but they never seemed to get that off the ground. Too bad - running OS/2 v2 in textmode with Tshell, that would've been the PERFECT companion app.
Am I the only one around who really wouldn't mind a modern multitasking textmode OS every now and then? Maybe a text-mode version of Menuet, all asm, all the time. Runs off a floppy. Could be fun.
Rexx was incredibly cool at the time: - implemented on a dozen platforms - code was multi-platform - extremely easy to use / easy to extend / easy to maintain - could run it from MVS JCL - was the macro language for ISPF I used rexx for the following: - converted hundreds of cobol programs from cobol 68 to COBOL II (required parsing code, replacing periods with end-ifs, end-searchs, etc) - created 'asserts' for several programming languages - in which a simple function key would confirm the syntax. - created 'point & click' character interfaces - in which a function key would look up whatever was at the current cursor location and open an ISPF browser window on that file. And the above code was *easy*. Today I'm writing a lot of code in ksh & python. If python wasn't around I'd probably create this code in rexx. Although it's harder to find support for than bash - it a far better language. And although perl is more powerful in some ways - it isn't the maintenance-disaster that perl is. But python is just simply too good a language. Too bad for Rexx.
Dlagonfry ship with big weapons velly coor. Dead guy with bad hailcut not so coor.
I think to go that far you really need to be looking at scripts wriiten in csh. sh may not be what you write the next killer FPS in, but it's a great tool for what it's generally used for - invoking other programs. (Including setting everything up nicely for those programs, with their environment settings and proper command-line arguments, etc.)
Darn. I'd love to go to this but that's when my Esperanto class meets.
I used to program in REXX a million years ago, and thought it was a pretty good language. Easy to learn, and powerful enough to use for lots of things.
This was before Unix became a commercial success - I often wished that someone would do a *really good* REXX port to Unix. But I force-fed myself shell scripts and Perl...it was initially painful, but worth it. I'm quite happy with what I'm doing these days.
REXX is a distant, but happy, memory for me. Maybe it would've flourished if it (a) wasn't from IBM, and (b) had been open-sourced a few years back. Too late now, oh well.
Back in college I did a lot of work on the mainframe in REXX. I knew that I'd been working too hard when my dreams at night would encounter a situation (non computer related - such as say no milk for cereal) and in my dream I'd solve the problem via some rexx code and/or XEDIT macros.
I've been meaning to try and get a XEDIT environment setup on my PC or Linux box, but have forgotten so much of it that I don't know if it'd be worth starting over or not.
Thanks to the wonderful people at IBM:
O OKS/dmse1a05/CCONTENTS
http://publibfp.boulder.ibm.com/cgi-bin/bookmgr/B
Try to search the ibm site for bookmanager and rexx. You'll find plenty of material.
REXX is ranked #36 amongst programming languages! How is that strong? Further, other languages considered dead by many are ranked higher than REXX.
Steve Magruder, Metro Foodist
Not just "at the time"!
It still is a very powerful language. I even used it to write a simulation of nuclear spin diffusion in a sparse cubic lattice. Take that!!!
Is Perl ultimately more powerful? Maybe, but because Rexx can do 90% of what Perl can do, and because it's so damn easy to USE and it produces READABLE code, it is 150% more effective than Perl for me.
Aaah, there were the days when Rexx was the scripting language for Lotus Smartsuite..!
I work for a company that develops a few applications for a larger-than-normal number of platforms. I write REXX-based test programs to test our applications and I must say it is SUCH an incredible time saver to write ONE REXX program that runs unmodified on Windows, FreeBSD, Red Hat, HP9000, RS6000, and Sun Solaris. I've slightly modified a version to run on Z/OS and AS/400 (it was easier to maintain separate versions for those two than to cram them all together due to the different limitations of those environments). Having REXX available on all those platforms drastically increased the amount of time spent actually testing our products compared to setting things up to test.
I used to program in ARexx back in my Amiga days and would NEVER have thought I would be making a living programming (in large part) in REXX a decade later.
I think choosing a tool that does what you need is all that's important. I was familiar with REXX from my Amiga days and when I showed my employer a (relatively quickly developed) batch testing suite that ran on six platforms with no tweaking needed for each one, needless to say they were impressed. REXX is one of those languages that anybody with ANY programming experience can look at and understand even if they've never seen it anywhere before.
0 to 18,446,744,073,709,551,615
or
-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
int64s have over 18 decimal digits of precison with NO roundoff error -- adequate to ennumerate the entire global GDP of the planet Earth in U.S. Dollars with ease (well in the trillions but surely not in the quadrillions of dollars).
If for some strange reason you need more precison with no roundoff error (or you don't have int64s available), you will need to write or obtain a multiple-precison integer computation package.
They are not too difficult to write a correct, working implementation. It may take you time to make it as fast and efficient as possible.
Has anyone else heard of this Rex (one X) language?
... get a solar-powered wrist sun-dial.
There is actually a version of REXX called T-REXX! The T stands for telephony.
To all you Unix bigots who want to call Rexx a dinosaur, you'd better take a good look in the mirror, because to the rest of the world, you don't look pretty.
Rexx dates from the the 1970's, just like the Unix shells. However, unlike them, Rexx is a modern language. Unlike the quirky, bizarre, and barbaric Unix shells that have continued to roam
the earth, threatening intelligent life, Rexx has reasonable facilities for modularization, name
space management, variable scoping, standard means of interfacing in both directions from C code, etc. With its ease of use, built in parsing, immediate access to command line functions, pipes, interprocess communication, etc. it was really in the same league as the
currently popular scripting languages and way ahead of its time.
Rexx was included in a number of operating systems and was part of IBM's effort to standardize all its platforms. Under OS/2, Rexx was the official standard scripting language and most significant programs actually did have Rexx interfaces. Once you knew Rexx (which was very easy to learn) you'd be able to script for pretty much anything. Plus, you had many third party libraries for networking, gui, etc., etc., and some very high quality visual IDE's. A very powerful combination.
This gave OS/2 a huge advantage over platforms like Windows and Unix, which have no standards in this direction. Under Windows, you have VB, which is powerful and extremely well supported, but proprietary to MS apps. There were a million independent scripting languages for specific Windows apps. Under Unix you had the shells, which are not powerful languages, not too suitable for embedding, and which are fragmented. Scripting under Unix thus became a rather dismal situation with either app-specific languages of very low quality (e.g. emacs lisp), or external scripting using command line switches or other uncompelling paradigm.
The situation now is that perl has replaced the shells for a lot of scripting and perl has the advantage of being a more reasonable language and has huge library support. However, perl still isn't a real embedded language and it's certainly not a standard for that. Under Gnome, Guile is "official" the standard scripting language, but in practice it's not used for that, even by Gnome apps.
As a former OS/2 user and a current Linux user, I have to conclude that, despite the emergence of perl and python, Linux has never caught up to the power of Rexx scripting. I can hobble by with a combination of shell scripting, perl, emacs lisp, and other glue, but it doesn't add up to the kind of power I used to have under OS/2.
Emacs lisp, _extremely low quality_? There are tons of popular scripting languages much worse than elisp (awk, perl, tcl). Compared to them elisp is actually quite a gem.
Which language is more marginalized and which community smaller? Rexx or Lisp?
From: ------- [KEDIT]
l e.pl?sid=04/0 3/24/0034224&mode=thread&t6 &tid=187
[mailto:------------]
Sent: Wednesday, March 24, 2004 1:00 PM
To: '------------'
Subject: RE: Kedit Port
Hi Steven,
Thanks for the link. It's nice to see that KEDIT still has admirers.
To correct a couple of points in the threads I looked at:
1) "I send mansfield an e-mail every so often requesting a Linux
version or ask to open source the code but they just ignore me."
We never ignore Linux/Unix version inquiries but there really haven't
been many over the years. We've been consistent in stating that we
have no plans for a Unix/Linux KEDIT. We've also been consistent in
stating that there are no open source plans.
1) "Mansfield software has quit supporting Kedit about a decade ago."
We still do support KEDIT for DOS, OS/2 and Windows. We essentially
don't sell KEDIT for DOS and OS/2 anymore since we ran out of manuals
some time ago and with sales of these versions so low, it wasn't cost
effective to print more. We sell license-only copies occasionally to
users who already know the product and need some more copies to be
legal. We're still selling KEDIT for Windows 1.5. We have no new
versions of KEDIT in the works though and perhaps this was what was
meant by the above comment.
Thanks again for the link. I only wish I had some better news for you.
------ -------
Mansfield Software Group, Inc
PO Box 532
Storrs CT 06268-0532 USA
Phone: 860-429-8402 x117 (M-F 8-5 EST)
Fax: 860-487-1185
Email: ----------------
Web: http://www.kedit.com
>
>>>>>>> Original Message: >>>>>>>
>
> FYI Scroll down to the post titled "Kedit and Rexx"
>
>
http://developers.slashdot.org/artic
id=126&tid=136&tid=15
>
> If you ever port kedit to Linux our department is good for 12
> copies....
I used Rexx extensively on MVS for many years. Incorporated it into a couple of products I developed. Miles ahead of TSO CLISTs.
Later I had to develop a special-purpose language with easy syntax for non-programmers to understand. It was heavily influenced by Rexx and had, like Rexx, typeless vars, strong intuitive string manipulation and associative arrays. Also the equivalent of execio so you could read a file into an array with one simple line of code. Imitation is the sincerest form of flattery!
While the power of shell scripts and Perl cannot be denied (I've used them both), they are syntactic abominations and not easy to pick up if you only use them occasionally.
Long live Rexx and Mike Cowlishaw (a nice fellow whom I had the pleasure of meeting once).
http://www.cgff.net/hotbeef/Hotbeef%20Arrives.gif
that IBM got the basic architecture of WorkBench for use in developing the Presentation Manager for OS/2 for their end of the trade in porting Rexx :) ...I sometimes wonder if the slow demise of OS/2 is somehow tied in with the Amiga curse :/
:(
Boy I sure do miss alt.amiga.religion
I guess I'm going to PC hell after all for that flub.
For balance, let's list REXX's main *mis*features...
1. Functions can't return multiple values, nor can they modify their arguments. If you want to write a function which returns two values (say), you need to use a magic string which you think will never occur in either of them as a separator, concatenate, return the result, and then split it apart again.
2. Whitespace is significant--it's interpreted as concatenation. Hence mistyped or syntactically invalid statements are quite likely to be reinterpreted as some kind of concatenation of variables. (And I thought Python was bad.)
3. Using an undefined variable is not considered an error. Instead, it just defaults to having a value that's the same as its name, only in upper case. Truly foul, especially when combined with misfeature #2 above.
So if (for example) you put whitespace between a function name and the brackets surrounding its arguments, it suddenly stops being a function call and becomes a concatenation of strings instead. Pass the barf bag.
4. REXX normally guesses continuations, by assuming the next line is a continuation of the current line if the current line doesn't look like a complete statement.
5. Comma is used both to separate function arguments, and to indicate continuation. So in spite of #3, you can't just break a long list of function arguments across multiple lines--you have to turn the last comma on each line into double-comma, or you get something completely not what you intended. Ugh.
6. You're allowed to use variables that have the same names as words used in the language itself.
7. Scoping is dynamic. Functions and procedures are just a hack whereby the system temporarily hides all variables except the listed ones, until it next hits a return. Not that you have to; it's quite possible to write functions with overlapping scope.
8. Forget about associative storage, REXX doesn't even have arrays. You can simulate them with 'compound variables', but then there's no type checking or bounds checking. If you want any, you have to write it yourself.
9. You can't pass arguments by reference. In fact, you can't pass them by value either. Instead, you have to pass constants, and have the function or procedure use those constants to calculate the name of the variables it should use.
I think REXX is the ugliest hack I've seen since Perl 4 or Tcl.
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
I have only used AREXX, but it was really cool. Nearly all applications had a REXX interface, so you could easilly write macro's that affected multiple applications. Just installed rexx on my debian system (package regina-rexx), going to revive some old memories :).
"It's too bad that stupidity isn't painful." - Anton LaVey
this is funnier and needs modding up too
GrimRC
JCL is where it is at. Rexx is for pussies. On second thought
.
And since the night can be called "scheduled", there is exactly *no* unscheduled downtime resulting in 100% availability.
I like your thinking!
-kgj
-kgj
You can get the latest version of REXX, Object REXX, for FREE, for Linux, Windows, Solaris, and OS/2 (which comes with "classic" REXX, which you can update to Object REXX).
There's also NetREXX, which compiles to Java bytecode.
For open source fans, there's Regina Rexx, available for almost all platforms. Debian users can "apt-get install regina-rexx".
cheers.
handy_vandal wrote:
Don't forget these are the real precursors to relational databases. CARDS
Master A set of columns with identifying information, i.e. Name, Address, etc. Detail One or more cards specifying summary information, i.e. Balance; and other cards carrying transaction information, i.e. debit/credit amounts, reference numbers, etc. Only problem was dropping the trays
Cheers!
--
Han Tacoma
~ Artificial Intelligence is better than none! ~
Don't forget [punch cards] are the real precursors to relational databases.
Very good point -- insightful!
-kgj
-kgj
On second thoughts....
(ObDisclaimer: joking aside and as someone who uses Perl 5 daily, I hope that Perl 6 does get deployed. If only to resolve the argument about which of laziness, impatience, and hubris is the greater sin.)
With a few changes to make it more OS portable (IO in particular), REXX might have been the scripting language instead of Perl, or Python (my personal choice for REXX replacement). I used REXX in the early 80's on VM and it was wonderful. Problem is the PC version was different, and UNIX version was different, and mostly IBM didn't care about all those platforms until it was too late and really good free open source scripting languages were available running the same on a lot of computers.
I do miss REXX, but I am very happy with Python.
Rexx was added long after several other scripting languages existed on VM/CMS (where it originated). There were also very good compilers for FORTRAN, PL/I, COBOL, Pascal and C. Not to mention an APL system and the ever-present Assembler. On other systems where Rexx later became important (OS/2, AmigaOS, OS/390 TSO) the same was generally true.
Rexx is used because it's quick and easy to write reasonably complex programs correctly. In fact, most Rexx programmers I've met over the last 20 years always start a new program from scratch - it's so easy, why not?
The reason Rexx is easier to understand than Perl is that Mike Cowlishaw deliberately avoided notational syntax elements. With very few exceptions, the syntax is entirely constructed with Enlish-language words, not with special characters.
Yes, once you've memorized a given language's use of notation, you can read it, but that's not the point.
There is an open source Rexx, and it's very good. Check out regina-rexx.sourceforge.net for details.
I'm fairly certain (having been on the Amiga OS team at the time, and having worked with Bill a fair bit) that he was not stiffed by Commodore on anything. I don't know what sort of deal there was for including ARexx in the OS - it might not have included money.
Bill did a fair bit of work for Commodore on contract, and also did a lot of testing and tool development for us (evil memory-allocation failure tools, for example). We tried to hire him on multiple occasions, but he preferred to stay in Boston.
Bill seems to be involved in Linux kernel/etc stuff nowadays from a quick google search.