NetRexx 2 -- 22 May 2009; jEdit w/ netrexx script plugin

classic Classic list List threaded Threaded
28 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx script plugin

Tom Maynard
On 10/28/2010 7:58 PM, George Hovey wrote:
> If we are serious about attracting programmers from non-Java (even
> non-OO) backgrounds
I confess that I have little or no interest in "converting" the
non-believers out there.  None of the non-Java JVM languages has taken
the lead (Scala, Groovy, BeanShell, JPython, ...), and NetRexx is in the
pack along with quite a few others.  I think we'll have to wait and see
what the future holds for alternative JVM languages.


> he was misled into believing that NetRexx is a superset of Java.  
> Nobody explicitly said otherwise.
>
Well, I'll point out again that curly brackets are not in the NetRexx
language definition.  Why introduce items arbitrarily when you have the
manual right in front of you?


> I think some concentrated thought is in order on why NetRexx isn't
> already a smashing success.
>
Why is Java a smashing success?  The usual reasons are: there is a
language standard (which makes it more palatable for corporate
adoption), it is maintained by a solid corporate entity, it is cross
platform ("write once, debug everywhere"), it has a huge library, and --
probably most importantly -- it's free.   The same things hold true for
all the "coat tail" languages ... except for the existence of a standard
and the level of support.  The lack of those two hinder widespread
acceptance of any alternative JVM language.

NetRexx may suffer some "it's an IBM thing" bias that misleads a group
of potential users.  I don't know.  Personally, I don't care if my
language of choice is popular with others or not ... in fact, most of
mine are not.  I write a good deal of code in Forth, and that language
has never approached the mainstream, or ever raised a blip on the
radar.  I usually choose the best tool for the job at hand, regardless
of its popularity.

All of this is, of course, purely my own opinion.

Tom.

_______________________________________________
Ibm-netrexx mailing list
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx script plugin

George Hovey-2
>I confess that I have little or no interest in "converting" the non-believers out there.
Fair enough.

>Well, I'll point out again that curly brackets are not in the NetRexx language definition.  Why introduce items arbitrarily when you have the manual right in front of you?
Perhaps because one is in a considerable state of confusion when encountering a new language.  If you're saying the a certain level of 'nous' should be required of anyone approaching NetRexx, that's also fair enough.

>Personally, I don't care if my language of choice is popular with others or not ... in fact, most of mine are not.
I don't much care either, but a language has to have a critical mass of users or its support will wither.  This seems especially true of NetRexx since it must be prepared to respond to Java developments.  Personally, I look for a universal language, which I think NetRexx is/could be.  I fear that switching among a smorgasbord of languages will make me a mediocre programmer in all of them.

>I think we'll have to wait and see what the future holds for alternative JVM languages.
I'm not familiar with the languages you mention.  But I hope that NetRexx is not just one of the pack (strictly speaking, it's not a JVM language since its target language is Java, not bytecode).  Assuming this is so, I would prefer something more "proactive" than "wait and see".  Since we have time on our hands, perhaps some of it could be devoted to thinking about how NetRexx could be "marketed" (in a non-pejorative sense).  I've suggested before that Java programmers should be a natural constituency.

>Why is Java a smashing success? etc.
Most useful.  I hope the group will give thought to where NetRexx stands vis a vis the points you made.

On Fri, Oct 29, 2010 at 10:32 AM, Tom Maynard <[hidden email]> wrote:
On 10/28/2010 7:58 PM, George Hovey wrote:
If we are serious about attracting programmers from non-Java (even non-OO) backgrounds
I confess that I have little or no interest in "converting" the non-believers out there.  None of the non-Java JVM languages has taken the lead (Scala, Groovy, BeanShell, JPython, ...), and NetRexx is in the pack along with quite a few others.  I think we'll have to wait and see what the future holds for alternative JVM languages.



he was misled into believing that NetRexx is a superset of Java.  Nobody explicitly said otherwise.

Well, I'll point out again that curly brackets are not in the NetRexx language definition.  Why introduce items arbitrarily when you have the manual right in front of you?



I think some concentrated thought is in order on why NetRexx isn't already a smashing success.

Why is Java a smashing success?  The usual reasons are: there is a language standard (which makes it more palatable for corporate adoption), it is maintained by a solid corporate entity, it is cross platform ("write once, debug everywhere"), it has a huge library, and -- probably most importantly -- it's free.   The same things hold true for all the "coat tail" languages ... except for the existence of a standard and the level of support.  The lack of those two hinder widespread acceptance of any alternative JVM language.

NetRexx may suffer some "it's an IBM thing" bias that misleads a group of potential users.  I don't know.  Personally, I don't care if my language of choice is popular with others or not ... in fact, most of mine are not.  I write a good deal of code in Forth, and that language has never approached the mainstream, or ever raised a blip on the radar.  I usually choose the best tool for the job at hand, regardless of its popularity.

All of this is, of course, purely my own opinion.


Tom.

_______________________________________________
Ibm-netrexx mailing list
[hidden email]



_______________________________________________
Ibm-netrexx mailing list
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx script plugin

rvjansen
In reply to this post by Tom Maynard
Tom,

thanks for your contribution, as it made me think. I have some experience in converting - sometimes the hard way. Some people, mostly with C++ and Java (the syntax) on their CV, will hate it, and will state that they do not see the benefit. Some people will like it right away and will stay converted.

While it is true that none of the other languages you mention has taken the lead, here are two facts:
- NetRexx was the first non-Java language for the JVM
- NetRexx is is the only non-Java language that had a part of the standard Java library (BigDecimal) written in it

I am planing, for PR purposes, to take a set of standard benchmarks (Per Bother just published, for Kawa, a nice set that seems to be in use a little bit longer) to prove that NetRexx is faster than the rest. It should be doable for at least JRuby and Jython, and I hope, of course, that we can beat them all.  Maybe have a look at http://per.bothner.com/blog/2010/Kawa-in-shootout/

It might be a good project for those of us with time on our hands, and we also need a baseline to compare (compile-time and runtime) performance against, not having a NetRexxCPS.

best regards,

René Jansen.

On 29 okt 2010, at 16:32, Tom Maynard wrote:

On 10/28/2010 7:58 PM, George Hovey wrote:
If we are serious about attracting programmers from non-Java (even non-OO) backgrounds
I confess that I have little or no interest in "converting" the non-believers out there.  None of the non-Java JVM languages has taken the lead (Scala, Groovy, BeanShell, JPython, ...), and NetRexx is in the pack along with quite a few others.  I think we'll have to wait and see what the future holds for alternative JVM languages.


he was misled into believing that NetRexx is a superset of Java.  Nobody explicitly said otherwise.

Well, I'll point out again that curly brackets are not in the NetRexx language definition.  Why introduce items arbitrarily when you have the manual right in front of you?


I think some concentrated thought is in order on why NetRexx isn't already a smashing success.

Why is Java a smashing success?  The usual reasons are: there is a language standard (which makes it more palatable for corporate adoption), it is maintained by a solid corporate entity, it is cross platform ("write once, debug everywhere"), it has a huge library, and -- probably most importantly -- it's free.   The same things hold true for all the "coat tail" languages ... except for the existence of a standard and the level of support.  The lack of those two hinder widespread acceptance of any alternative JVM language.

NetRexx may suffer some "it's an IBM thing" bias that misleads a group of potential users.  I don't know.  Personally, I don't care if my language of choice is popular with others or not ... in fact, most of mine are not.  I write a good deal of code in Forth, and that language has never approached the mainstream, or ever raised a blip on the radar.  I usually choose the best tool for the job at hand, regardless of its popularity.

All of this is, of course, purely my own opinion.

Tom.

_______________________________________________
Ibm-netrexx mailing list
[hidden email]



_______________________________________________
Ibm-netrexx mailing list
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx script plugin

Tom Maynard
On 10/29/2010 11:07 AM, René Jansen wrote:
> I am planing, for PR purposes, to take a set of standard benchmarks
> (Per Bother just published, for Kawa, a nice set that seems to be in
> use a little bit longer) to prove that NetRexx is faster than the
> rest. It should be doable for at least JRuby and Jython, and I hope,
> of course, that we can beat them all.  Maybe have a look at
> http://per.bothner.com/blog/2010/Kawa-in-shootout/
>
I have already considered doing the very same thing.  The Win32 Language
Shootout (http://dada.perl.it/shootout/) was where I was going to
start.  There already exists a Rexx entry
(http://dada.perl.it/shootout/rexx.html), and one for Java
(http://dada.perl.it/shootout/java.html) -- so a NetRexx version should
not be out of reach.

Tom.

_______________________________________________
Ibm-netrexx mailing list
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx script plugin

alansam


On 29 October 2010 10:10, Tom Maynard <[hidden email]> wrote:
There already exists a Rexx entry (http://dada.perl.it/shootout/rexx.html), and one for Java (http://dada.perl.it/shootout/java.html) -- so a NetRexx version should not be out of reach.


It's interesting that the Rexx benchmark was done with Regina Rexx and not ooRexx.  One wonders if there's any differences between these specific implementations of Rexx.

Alan.
--
Can't tweet, won't tweet!

_______________________________________________
Ibm-netrexx mailing list
[hidden email]

Alan

--
Needs more cowbell.
Reply | Threaded
Open this post in threaded view
|

Re: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx script plugin

Thomas.Schneider.Wien
In reply to this post by Kermit Kiser

Hello Kermit, *and* all,
for sure, such a document will be needed .....
Thomas.
================================================================

Am 28.10.2010 20:48, schrieb Kermit Kiser:

> I must confess that Bob's questions generally puzzle me - I have no
> idea why anyone would want to mix wonderful clean NetRexx with that
> horrible Java syntax of braces and superfluous semicolons everywhere.  
> (DJS)
>
> But on second thought, I wonder if perhaps Bob does not know that,
> practically speaking, NetRexx is a completely different language from
> Java that just happens to be able to access all Java objects (with a
> few exceptions that have already been reported as bugs here).  And I
> wonder if there are more people like Bob who are beginners with
> NetRexx and even Java and do not know the relationship of the two
> languages and how they interact. That learning curve would include the
> various aspects of Java that Chip just mentioned.
>
> We have discussed the need for additional technical documentation for
> NetRexx, especially in the area of installation. But here is a new
> question - Do we as a community need to provide a "Beginner's Guide to
> NetRexx" type of document that addresses things like what you can do
> with NetRexx and how it is related to Java and especially how it
> interacts with Java objects and how to make use of them?
>
> -- Kermit
>
>
> On 10/28/2010 6:34 AM, Chip Davis wrote:
>> Hear, hear, George!
>>
>> I don't know what, if any, damage you did to The Truth, but you spoke
>> the truth as I see it.
>>
>> One of the hardest concepts to get across to folks seems to be the
>> distinction between Java-the-language and Java-the-class-libraries,
>> Java-the-platform, Java-the-environment, Java-the-everything-else.
>> (With your permission, I intend to start using the acronym DJS. ;-)
>>
>> And Bob, may I suggest that if you are trying to do something in
>> NetRexx with say, dates, you might consider firing up Google and
>> entering "java date".  You'll get a pageful of links to the Java
>> documentation on how to use it.
>>
>> -Chip-
>>
>> On 10/27/10 23:38 George Hovey said:
>>> Bob,
>>> You're right, but the list of identical things is small.  I hope I'm
>>> not doing too much damage to the truth with the following.
>>>
>>> The identical things are pretty much confined to those necessary to
>>> invoke Java classes and methods. The syntax for invoking class
>>> methods is identical, ie class.method(arguments).  If you mention a
>>> class that is not already known to NetRexx, NetRexx will silently
>>> search through the most popular Java packages for such a class and
>>> use it if found; hence Java's Date() is found automatically.  This
>>> can work because NetRexx classes are indistinguishable from Java
>>> classes by design.
>>>
>>> The other necessary element to call Java classes is be able to pass
>>> method arguments.  In Java these can be either classes (again, the
>>> same in both languages), or 'primitive types', eg int, char etc.  
>>> This is neatly dealt with by giving these identical definitions in
>>> NetRexx.  [There is even an ingenious system for recognizing and
>>> using argument types that are almost, but not quite, right.]
>>>
>>> Almost anything else you write using Java syntax will be found wrong
>>> or misinterpreted.  For example, if you try to write a loop, 'for
>>> ...' in Java syntax, NetRexx won't know what you are talking about:
>>> it expects 'loop...'.  We True Believers feel that, except to
>>> understand Java class documentation, it is almost counterproductive
>>> (I exaggerate) to know Java syntax -- NetRexx's equivalent is in
>>> almost all respects superior.
>>>
>>> The purpose of all this is to commandeer the Java Class Library --
>>> the product of years of work by an army of programmers -- without
>>> having to use the dreaded Java syntax.
>>>
>>>
>>> On Wed, Oct 27, 2010 at 5:44 PM, Robert Hamilton
>>> <[hidden email] <mailto:[hidden email]>> wrote:
>>>
>>>     And I would never have thought to use Date().  That's my point. Is
>>>     there some list of Java things that NetRexx _can  _deal with.
>>>
>>>     bobh
>>>
>>>
>>>     _______________________________________________
>>>     Ibm-netrexx mailing list
>>>     [hidden email] <mailto:[hidden email]>
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>> _______________________________________________
>>> Ibm-netrexx mailing list
>>> [hidden email]
>>>
>> _______________________________________________
>> Ibm-netrexx mailing list
>> [hidden email]
>>
>>
>>
> _______________________________________________
> Ibm-netrexx mailing list
> [hidden email]
>
>


--
Thomas Schneider Projects ReyC & LOGOS on www.KENAI.com
_______________________________________________
Ibm-netrexx mailing list
[hidden email]

Tom. (ths@db-123.com)
Reply | Threaded
Open this post in threaded view
|

Re: NetRexx/Cygwin [was: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx scriptplugin]

Thomas.Schneider.Wien
In reply to this post by Tom Maynard
Hello Tom Maynard, *and* all,
The only comment that I *do have* to the code sample below:

Why are so many lines of code needed then a simple 'linein'
(a for instance, from www.Rexx2Nrx.com) does all of that ....

It's a pity, to have the need to code so many lines in Java....

Thomas Schneider.
==========================================================

Am 28.10.2010 23:58, schrieb Tom Maynard:
On 10/28/2010 3:08 PM, David Requena wrote:
I'm curious about your "under cygwin" installation. Why would you want such a thing? Are you using GNU's gjc instead of Sun's javac? 

Here's an example of calling Java objects from NetRexx.  One of the things I commonly do is write a program that issues an operating system command, and then deal with the results in some fashion.  This one just echos the output onto the screen, but it demonstrates the concept:

/*
 * OSCall - issue an Operating System command
 */

r = Runtime.getRuntime()

do
  line = Rexx

  p = r.exec("ls -l")
  in = p.getInputStream()
  buf = BufferedInputStream(in)
  inread = InputStreamReader(buf)
  mybufferedreader = BufferedReader(inread)

  line = mybufferedreader.readline()
  loop while line \= null
    Say line
    line = mybufferedreader.readline()
  end

  catch RuntimeException
    Say "Oops ... something went wrong"

  finally
    mybufferedreader.close()
    inread.close()
    buf.close()
    in.close()
end

This is obviously a Cygwin version.  It's a bit more complicated with Windows commands, but the principle remains the same.  This was obviously not written for public consumption, but I post it anyway in the hope it will be instructive.  It might be beneficial if everyone put up a small example like this, opening and reading a file, getting/setting environment variables, printing something, etc.  They could then be collected together to form the basis of a Beginner's Guide.  (Or, in this case, a Cookbook)

Tom.
_______________________________________________ Ibm-netrexx mailing list [hidden email]


--
Thomas Schneider Projects ReyC & LOGOS on www.KENAI.com

_______________________________________________
Ibm-netrexx mailing list
[hidden email]

Tom. (ths@db-123.com)
Reply | Threaded
Open this post in threaded view
|

Re: NetRexx/Cygwin [was: NetRexx 2 -- 22 May 2009; jEdit w/ netrexx scriptplugin]

Tom Maynard
On 10/29/2010 8:43 PM, Thomas Schneider wrote:

Why are so many lines of code needed then a simple 'linein'
(a for instance, from www.Rexx2Nrx.com) does all of that ....

The question arose about the way to call Java objects from NetRexx.  The snippet was designed to illustrate this ... and calls as many objects as necessary to get the job done in a professional, safe, boilerplated manner.  Corners could have been cut, but that would have devalued the code as a tutorial, IMO.


It's a pity, to have the need to code so many lines in Java....

If you're just starting out, it's helpful to have reasonably complicated (but understandable) examples.  I didn't design the Java language or the JVM (they didn't even ask me!) ... but that's the heritage we have to live with.

Tom.

_______________________________________________
Ibm-netrexx mailing list
[hidden email]

12