Slashdot Mirror


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."

2 of 61 comments (clear)

  1. The only answer: by torpor · · Score: 4, Insightful

    Language Diversity.

    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 ... strong language evolution is best served by having a massive genepool.

    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 ... REXX may one day compete with CPAN, you never know ... ;)

    --
    ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
  2. Re:It's CobolScript for Unix!!! by Just+Some+Guy · · Score: 4, Insightful
    ADDRESS SYSTEM ls WITH OUTPUT FIFO '' ERROR NORMAL

    That's definitely verbose and ugly, but behind the scenes, that code just "connected" to the "SYSTEM" port, issued the "ls" command, and sent some configuration information.

    PARSE PULL line

    When you "ADDRESS"ed the SYSTEM object, you basically imported it's API into the REXX namespace. See that "PARSE PULL" bit? That command comes from the SYSTEM object, and isn't part of the REXX language proper. Imagine this code sample (completely invented and unlikely to work without modification, but still illustrative) instead:

    #!/usr/bin/rexx
    ADDRESS POSTGRESQL
    SELECT * from tablename
    DO WHILE rowsleft() \= 0
    RETRIEVE row
    ADDRESS EMAILER
    SEND row TO emailuser@company.com SUBJECT "SQL Query Row"
    END

    Suddenly it doesn't seem quite so horrible, does it, when you realize that you can connect directly to any REXX-enabled application and control it as though you were written a script directly within that application?

    I'm not saying that I'd ever for a moment consider touching REXX code again without a large monetary incentive, but you should understand that noone said "hey, this language has no redeeming values, let's use it!". It has its own unique properties, and while the ugliness outweighs the good stuff, it certainly had its niche back in the day.

    --
    Dewey, what part of this looks like authorities should be involved?