If you install BSF4ooRexx then you can use Java classes in Rexx code.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
עַם יִשְׂרָאֵל חַי



________________________________________
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of 
Rick Troth <tro...@gmail.com>
Sent: Wednesday, November 22, 2023 10:09 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: External Functions in C on z/OS

Are you saying that you can call Java from ooRexx?
How does that happen? Do you spin-up a JVM running in standby mode? Do
you run ooRexx in a JVM?
I can call native code from Java, but always have to transit the JNI.
Never been able to go the other direction.

The JVM is the single most difficult (for me, but I have lots to learn)
barrier to inter-language operation with Java (other than Scala,
Clojure, Groovy and friends which already run "in" the JVM).

-- R; <><


On 11/17/23 10:00, Rony G. Flatscher wrote:
> On 16.11.2023 22:54, David Crayford wrote:
>> I don't find ooRexx useful on the PC as it's basically on life support
>> where Python has millions of contributors. Take data validation as an
>> example. There is a first class library
>> https://docs.pydantic.dev/latest/.
>>
>> Python isn't my favorite language by a large margin. But it is useful
>> so it
>> wins. Same same with Java. Personal preference is secondary to a
>> pragmatic
>> choice.
>
> The combination of ooRexx [1] with Java [2] - on all platforms -
> allows one to exploit all of Java (the Java runtime environment) as a
> huge external class library for ooRexx. Unlike with Python there would
> be no need to locate, choose and import specific modules with the
> needed functionality, rather one can use the Rexx skills to
> immediately exploit all of the Java functionality on all platforms.
>
> It is hard to realize/assess the potential of this combination without
> a little bit of curiosity and the will to learn new tricks.
>
> ---rony
>
> [1] ooRexx download site:
> <https://sourceforge.net/projects/oorexx/files/oorexx/>
> [2] ooRexx-Java bridge (BSF4ooRexx850) download site:
> <https://sourceforge.net/projects/bsf4oorexx/files/beta/20221004/>
>
>
>> On Fri, Nov 17, 2023 at 5:32 AM Seymour J Metz <sme...@gmu.edu> wrote:
>>
>>> I find REXX extremely useful on PCs, but TSO/E REXX is a backwater
>>> compared to ooRexx, and I would be tempted to use Java or Python for
>>> complicated TSO scripts. But on z/Linux ooRexx with BSF4REXX is a
>>> viable
>>> option.
>>>
>>>
>>> --
>>> Shmuel (Seymour J.) Metz
>>> http://mason.gmu.edu/~smetz3
>>> עַם יִשְׂרָאֵל חַי
>>>
>>>
>>>
>>> ________________________________________
>>> From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on
>>> behalf
>>> of David Crayford <dcrayf...@gmail.com>
>>> Sent: Thursday, November 16, 2023 4:02 PM
>>> To: IBM-MAIN@LISTSERV.UA.EDU
>>> Subject: Re: External Functions in C on z/OS
>>>
>>> I choose a language on capabilities rather than personal preference.
>>> I’ve
>>> been accused on this forum by my ex-colleague and pal Wayne
>>> Bickerdyke of
>>> having a pathological dislike of REXX. That’s not true, but I do
>>> find it
>>> less useful than other languages. Python has a useful library called
>>> ctypes
>>> which includes classes for mapping data structures with Python
>>> classes. We
>>> use BigEndianStructure for mapping control blocks
>>> https://docs.python.org/3/library/ctypes.html#ctypes.BigEndianStructure.
>>>
>>> It would be cool if the tooling that we worked on with Peter Relson to
>>> create C header files could be reused to generate Python mappings.
>>> With the
>>> recent zIIP offloading Python is strategic.
>>>
>>>> On 17 Nov 2023, at 12:38 am, Charles Mills <charl...@mcn.org> wrote:
>>>>
>>>>   Different strokes for different folks.
>>>>
>>>> 1. I was not aware of that pointer. This is the classic documentation
>>> problem. The answer is right there in the manual, clear as day --
>>> provided
>>> you know where to look. A lot of these answers are easy to find,
>>> assuming
>>> you already know the answer.
>>>> 2. My code is running a complex Rexx environment that frankly I do not
>>> fully understand. (I didn't write it and it isn't "mine.") I wanted
>>> to be
>>> sure I had THE right environment block, not SOME environment block. An
>>> 11-instruction assembler module seemed like a great solution. I still
>>> believe that it was.
>>>>   Charles
>>>>
>>>> On Thu, 16 Nov 2023 11:31:20 +0800, David Crayford
>>>> <dcrayf...@gmail.com>
>>> wrote:
>>>>> There's a TSO/E vector table that has the address of the REXX
>>>>> routines.
>>>>>
>>>>> // get the address of the TSO/e vector table
>>>>> CVT  * cvt  = *(( CVT ** ) CVTPTR);
>>>>> TSVT * tsvt = cvt->cvttvt;
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to