On 25/06/2021 6:37 am, Seymour J Metz wrote:
What else?
Stack and attention handling. Supporting existing REXX-aware code. Possibly
rxapi. Address size issues.
Would a build of OoRexx without fopen() be useful?
Presumably David found it useful.
I value languages that support the MVS file system. All I had to do to
enable Lua to run from from PDS data sets was to patch the package
loader with an extra string "//DD:LUA(%s)" and it worked.
The point of difference between Rockets Python and IBMs is that Rocket
have switched `open` to `fopen` so `f = open("rb",
"type=record,noseek")` will work with data sets. To me that's important
but not so much to the millenials
as they live in z/OS UNIX and only venture into TSO/SDSF to use SDSF.
When I ported ooRexx to z/OS I ran into this roadblock. I mentioned it
to the project lead and he suggested introducing delegates. I bailed at
that point. Everything about ooRexx is difficult. Porting Python and Lua
is relatively easy. All the languages
I'm familiar with use a VM so generate bytecode. ooRexx creates a
humongous object graph. Every instruction and statement is a C++ class
that inherits from an abstract base class. It's OO madness and the major
reason why it's carthorse slow. It's a relic of it's time
when inheritance was overused. These days inheritance is used with
caution and composition is the preferred pattern. Some modern languages
like Rust don't even support inheritance.
I don't see the point in ooRexx when languages like Python are so much
better and easy to learn.
[1]
https://github.com/ooRexx/ooRexx/blob/master/interpreter/instructions/IfInstruction.hpp
Would a port of OoRexx readily support ADDRESS SYSCALL, ADDRESS SDSF,
ADDRESS ISREDIT, , perhaps using replaceable packages,unmodified?
It would have to in order to be useful.
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
________________________________________
From: IBM Mainframe Discussion List [[email protected]] on behalf of
Paul Gilmartin [[email protected]]
Sent: Thursday, June 24, 2021 3:52 PM
To: [email protected]
Subject: Re: Coding for the future
On Tue, 22 Jun 2021 11:23:41 +0000, Seymour J Metz wrote:
Yes, I know that TSO support requires heavy lifting, and not just for fopen().
Would a build of OoRexx without fopen() be useful?
(bI've long wished that catalogued data sets could routinely be mounted
via NFS so open() would suffice.)
The problem is that those "more modern" languages don't support the close
integration of scripts to applications that REXX supports.
Would a port of OoRexx readily support ADDRESS SYSCALL, ADDRESS SDSF,
ADDRESS ISREDIT, , perhaps using replaceable packages,unmodified?
________________________________________
From: David Crayford [[email protected]]
Sent: Tuesday, June 22, 2021 2:45 AM
Never going to happen. I ported ooRexx to z/OS UNIX over a decade ago
and getting it to work in TSO is a heavy lift. It doesn't use fopen() so
needs a lot of patching to work with MVS data sets. It's not worth the
effort. There are better, more modern languages available on z/OS now so
it's only the diehard REXXers that are interested.
-- gil
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN