On 09.01.2022 03:19, David Crayford wrote: > On 9/1/22 2:15 am, Rony G. Flatscher wrote: >> On 08.01.2022 01:52, David Crayford wrote: >>> On 7/1/22 7:53 pm, Rony G. Flatscher wrote: >>>> ... cut ...
>> Well all of your languages miss the support for the message paradigm. > > What on earth are you talking about? Hmm, this sounds quite emotional. :) > Number 7 on my list is support for OO which implies message passing. Well, this does not mean that the programming language supports the message paradigm. If it did it would have an explicit "Message" class (like there are explicit classes like "Object", "Class", "Method" and the like), hence messages are not FCOs. Compare this to languages like SmallTalk or ooRexx. Maybe it is easier to grasp some of the ramifications by looking at the popular fluent pattern (https://en.wikipedia.org/wiki/Fluent_interface) which needs to be explicitly programmed in languages that do not support the message paradigm, but is "freely" ;) available in languages like Smalltalk and ooRexx. ... cut ... >>> That's why I have absolutely no interest in NetRexx. I have far better >>> options on the JVM. >> Well, you mention in another post that you were/are an expert REXX >> programmer, love Lua, use Python >> in your shop because of your teams coming with that knowledge from the >> colleges, but nowadays you >> would mainly code in Java/Kotlin. Kudos! >> >> What appears to be a little bit strange with such a background is that you >> have obviously never >> really assessed NetRexx, as otherwise you could not possibly have come to >> such wrong conclusions. > > Why would I invest time into NetRexx. How many NetRexx jobs are there out > there? Why would that be important? (Besides, due to NetRexx' design philosophy there is not really much time to invest, especially if you have a good REXX background such that you understand already the purpose of e.g. the keyword statement TRACE; you may want to try to trace a program written in Java or Kotlin the way NetRexx allows for.) The question to ask is: can NetRexx be used to (quickly) create reliable professional applications? The answer is simple: yes. It is available, it is proven, it has been successfully used to create professional programs. (In case you must supply Java source code, you still can use NetRexx and have it eject Java source code.) NetRexx creates normal, genuine Java classes as does the Java compiler or the Kotlin (or the Groovy ...) compiler. All the compiled Java classes (Java bytecode) can interoperate, with each other so it is possible to use NetRexx compiled Java classes from Java and Kotlin (and Groovy ...) and the other way round, NetRexx can use Java classes compiled from Java or Kotlin (or Groovy ...) programs and the like. Therefore it does not matter whether everyone on earth is using NetRexx or only a single person. The question then is: what is the problem at hand, what programming languages qualify best to solve it? And NetRexx can be used for most problem domains, no need to use a language with special features that are not needed to solve the problem at hand. If I were you (with your background), I would seriously look into NetRexx, rather then ignore it. You for sure would quickly become able to solve most of your programming problems with it, exploiting your REXX and Java knowledge. OTOH, if you do not want to look into it, that is fine too, of course, but then, please do not badmouth technologies you simply have no experience with. > Kotlin is not only a first class language for server side it is also the > language of choice for > building Android applications. Kotlin and Android is interesting: Android is a Linux-based operating system for which Android applications have been mostly created in Java for more than a decade, without the public even realizing it (even today). This is the reason why Oracle has been suing Google over the use of Java, although Google used an open source Java implementation from the Apache software foundation. Google used IntelliJ for developing Java applications for Android and even forked IntelliJ. The IntelliJ people came up with Kotlin a few years ago, which is a JVM language compiling to Java classes (Java bytecode), and Google embraced it. AFAIK most of the Android applications get still created with Java as it takes time to learn Kotlin and as long as Kotlin does not really add great value to the application domain it is cheaper to stick to Java (saving learning curves and new type of coding errors). Besides, if you witness the evolution of the Java language you see that it is not really necessary to switch to Kotlin as Java gains step by step those concepts that programmers find really helpful. Here a comparison of Java with Kotlin using your Google trends (borrowing your idea from below): <https://trends.google.com/trends/explore?q=%2Fm%2F07sbkfb,Kotlin>. > Who uses NetRexx? Are there any example applications that you can cite? REXX > has fallen off a > cliff https://trends.google.com/trends/explore?date=all&q=%2Fm%2F06g3m. Well, following such trends there would be no mainframe, no z/OS, no COBOL, no ... Also the trend looks different if taking the last twelve months: <https://trends.google.com/trends/explore?q=%2Fm%2F06g3m>, it looks quite healthy! ;) It is always important to realize which (subset) and how the data gets collected and how the results get then interpreted. E.g. look at this (comparing Rexx, Basic, COBOL): <https://trends.google.com/trends/explore?date=all&q=%2Fm%2F06g3m,%2Fm%2F019p2,cobol>. So following your logic it does not make sense to look/invest into BASIC and COBOL and ... yet, your company, if not mistaken, earns money doing exactly that? > It's niche is the mainframe where it is an important and useful language. The > reason IBM are > porting languages like Python to z/OS is to keep the platform relevant. Adding current technologies is always good, if they add value to the table, the more open such technology the better (from a strategic point of view)! However, it is important to realize that REXX based/ignited technologies like ooRexx (REXX++ ;) ) and NetRexx have been originally developed by IBM which made the sources available to RexxLA for open sourcing these technologies, hence ooRexx and NetRexx are there, are available, proven, powerful and allow any REXX programmer to take immediately advantage of its (additional) features! As you may have seen by looking up the little tutorial (links supplied in an earlier posting) about how to get ooRexx compiled for the mainframe to access DB2 on a mainframe, the technology is there and makes it quite easy for mainframe REXX programmers to take advantage of it. This is much cheaper and much more productive than waiting on another programming language to become available with the infrastructure REXX and REXX programmers have been enjoying and exploiting for decades on the mainframe. It would be even better, if the open source ooRexx 5 would get ported to z/OS directly. It is plain C++ (CMake) and it is *very* easy to add external functions using the ooRexx C++ APIs (all of the features of ooRexx become fully available from C++ as well, such that one could even send ooRexx objects/values messages directly from native C++ code, if necessary). To see oneself what is involved in creating external functions for ooRexx you may want to look up the C++ API samples that get installed with ooRexx (cf. the directory "samples\api\c++\external") which demonstrate how easy it is to create external functions (of any complexity). For reference the appropriate ooRexx documentation can be found in the PDF book entitled "ooRexx APIs" carrying the file name "rexxapi.pdf", "Chapter 1, Rexx C++ Application Programming Interfaces". Maybe for IBM, seeing IBM's support for open source, a port of ooRexx 5 to z/OS may be a valuable project, empowering their mainframe customers (and their own technical personnel) to become able to take advantage of the great features that ooRexx adds to REXX? As the tutorial has demonstrated, the benefits would be immediate! Having a port of ooRexx would allow customers and IBM personnel to check it out and assess it. What could be wrong about such a move? ---rony -- __________________________________________________________________________________ Prof. Dr. Rony G. Flatscher Department Wirtschaftsinformatik und Operations Management Institut für Wirtschaftsinformatik und Gesellschaft D2c 2.086 WU Wien Welthandelsplatz 1 A-1020 Wien/Vienna, Austria/Europe http://www.wu.ac.at __________________________________________________________________________________ ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN