Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread David Crayford
On Tue, 2022-03-22 at 14:32 +, Farley, Peter x23353 wrote:
> +1 for MetalC.  Puts it all under your control.

Why Metal/C? Metal/C is great for what it's designed for, which is systems 
level programming such as supervisor state, AR mode stuff etc. But it only has 
a tiny runtime library. If you wanted to do
network programming using TCP sockets you would have to write your own code 
using the z/OS UNIX assembler callable services, and that's not much fun. Same 
for file I/O such as VSAM. I would much
rather use C++ which has an extensive runtime library and lots of open source 
stuff I can download from Github. The REXX command processors I have written 
require LE for regular expressions or to use
the Redis client libraries. I can't think of anything exciting that I could 
write in Metal/C.

We're big Metal/C users but I wouldn't advocate it for anything other than as a 
high level assembler replacement with a superb optimizer. 

> 
> +10 for SAMPLIB members in MetalC, not that any such are very likely to be 
> provided in what's left of our working lifetimes.
> 
> Peter
> 
> -Original Message-
> From: IBM Mainframe Discussion List  On Behalf Of 
> Paul Gilmartin
> Sent: Tuesday, March 22, 2022 9:31 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
> 
> EXTERNAL EMAIL
> 
> On Mon, 21 Mar 2022 11:35:51 +0800, David Crayford wrote:
> > > Wouldn't a SAMPLIB member be nice?  In a HLL?
> > 
> > Writing a REXX command processor in a HLL is non-trivial to do correctly. 
> > I've done it a few times and it requires creating a persistent LE 
> > environment  ...
> > 
> Well, then, Metal-C?
> 
> RFE for SAMPLIB members?
> 
> --
> 
> This message and any attachments are intended only for the use of the 
> addressee and may contain information that is privileged and confidential. If 
> the reader of the message is not the intended
> recipient or an authorized representative of the intended recipient, you are 
> hereby notified that any dissemination of this communication is strictly 
> prohibited. If you have received this
> communication in error, please notify us immediately by e-mail and delete the 
> message and any attachments from your system.
> 
> 
> --
> 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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread David Crayford
On Tue, 2022-03-22 at 11:34 +, Seymour J Metz wrote:
> We'll have to agree to disagree on whether restricted backtracking is 
> desirable. IMHO it greatly restricts the expressive power and utility of the 
> language.

I suggest reading the original paper submitted to the ACM by Professor Bryan 
Ford from MIT https://bford.info/pub/lang/peg.pdf. It finishes with "Finally, 
despite their ability to express language
constructs requiring unlimited looka-head and backtracking, all PEGs are 
parseable in linear time with a suitable tabular or memoizing algorithm". This 
is important. PEG parsers use memoizing and
other sleights of hand. Regular expression implementations using recursive 
backtracking can exhibit exponential running time in some cases. This is known 
as "catastrophic backtracking. Also, PEGs
don't have grammar ambiguities. Every PEG is deterministic.

It's also worth reading Professor Roberto Ierusalimschy's paper on LPeg where 
he explains the inherent weaknesses of regular expressions 
http://www.inf.puc-rio.br/~roberto/docs/peg.pdf and how PEG
parsers solve those issues. 

I use regular expressions all the time in both Java and Python. For simple 
string tokenizing and pattern matching they're great. But for heavy text 
processing they just don't cut it. 

> 
> BTW, while I find the *ix syntax for refexen to be unduly terse, PEG suffers 
> from the same fault; in fact, PEG and regex syntax are very similar. I'd much 
> prefer something along the lines of Icon.
> 
> 
> --
> 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: Tuesday, March 22, 2022 7:09 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
> 
> It’s restricted backtracking which is desirable and a much better 
> implementation than regex 
> https://secure-web.cisco.com/1swO48l1_JB99CkRa7AMmDq2Z0sGAFRLPab3VIIcfgUnux20kM6PQg8QhPaddTUOao6BuHgnugd-htzOobi6JBCFXLG4Aw2UYQYWL-MuMiD-ZPGACexqeNy3dDMhXL5viUfxY3jOpw2zCkFeRv1ZB2Fyext2w9HrC4q8aeAuWOUkKbcpRDF-wUkyqNNzmUl-Qv-jAxpPXm-W_yZD0Y7D-FOkMubanuZaHFMGziJYNL85TyJx_RqB4a3qG4UZPIzvf_A6AdBZhuQnUcKAZq440h6Cmf6Kk1FBKzpAYptArppxx-zOnzF9XGe_AYzYDl3giARQptMDgIGVYTPMfPOS6bd68-cd55XpGsrd6QD97WYP1KyJT4bsPItZwCRZgNNJaQpSOopSNLLaT2rZBX9lUKliAN1A3I5BnjxEC-wjkNGAK1y85Z8jzy7R4sOnZmCuLyyR_5dYDYxRjyDsL5tF_Ww/https%3A%2F%2Fwww.sobyte.net%2Fpost%2F2022-01%2Flpeg%2F
> . Regular expressions are fine for simple use cases but suck when they become 
> complex. They are also slow and blared which is why everybody uses PEGs these 
> days.
> 
> > On 22 Mar 2022, at 18:55, Seymour J Metz  wrote:
> > 
> > Hm, the article explicitly mentions contexts in which PEGs don't backtrack 
> > but instead do greedy matching. In Perl, greedy matching is available if 
> > you need it but is not the norm.
> > 
> > 
> > --
> > Shmuel (Seymour J.) Metz
> > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7C4c197eb4e4a04d26a9f808da0bf486d6%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637835442120805500%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=w78MjUxtKqWrD6eW97hd39agqHvBGvU9U1ylC2H9arI%3Dreserved=0
> > 
> > 
> > From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> > David Crayford [dcrayf...@gmail.com]
> > Sent: Monday, March 21, 2022 10:12 PM
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Subject: Re: looking for 'how to' developing Rexx host command
> > 
> > > On Mon, 2022-03-21 at 13:33 +, Seymour J Metz wrote:
> > > I just read the wiki artlice [[Parsing expression grammar]] and don't see 
> > > either the sophistication or the ease of use compared to regexen. I've 
> > > come to rely on named captures and backtracking,
> > > both
> > > of which seem to be missing.
> > 
> > Absolutely not. Depending on the library it's trivial to support named 
> > captures within named captures 
> > http://secure-web.cisco.com/1pDw906RvgdZxwW-QAEwZVgBdvkJGRrcGKbuoM_TdwgoBeW3Z55X8fS2im3k0c5R5U6qsEXk9asWW1HUfxN9dtI2zv_Ngos--f2Am86zaajaxDZrOInyLvR8tCMHaFDZRHk7tTsH10uKMqWRO1P0fQZncGO5DnJwzxkh6fcdOUxUycX64-3s_Z5MLmWkQ4YJ8QI2PAD0RNl86JJbdYHKlIaU8tOLuY2qjk3ZevVEI0l9bP3dNEmon3N8iIHS7k3Tq5-X4cUf_1yWZQAPjmgm4dsqQDCvdanw6s44hzVLRQjv4dwuSf_gmqak_hqEzkFjo31RK8HTfprGsToGW102HQhDXeGfWDlnXK1791cGZyCf3KvwdJtQsOKemboglVwH8RsXUyHbiv7i9cDdx89-bwYUFUirBHHKOVMand591UMM2weqvabSC5WH-C3-7GQq4/http%3A%2F%2Flua-users.org%2Flists%2Flua-l%2F2010-02%2Fmsg00493.html
> > . B

Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Tony Harminc
On Tue, 22 Mar 2022 at 18:31, Seymour J Metz  wrote:
>
> While much of PL/s should be highly portable, GENERATE is very much 
> architecture dependent.

Sure. But GENERATE is no less portable than C's __asm(...) . You don't
have to use either.

Tony H.

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Seymour J Metz
C was driven by:

The limitations of the PDP-7

The availability of a free compiler.

Making BSL and PL.S available as program products wouldn't have affected those 
factors. Also, while C is less portable than PL/I, it is more portable than 
GENERATE.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Paul Gilmartin [000433f07816-dmarc-requ...@listserv.ua.edu]
Sent: Tuesday, March 22, 2022 10:59 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 14:32:35 +, Farley, Peter x23353  wrote:

>+1 for MetalC.  Puts it all under your control.
>
I don't know the chronology, but I wonder whether if IBM had
made PL/S a product early enough, C would never have happened.

>+10 for SAMPLIB members in MetalC, not that any such are very likely to be 
>provided in what's left of our working lifetimes.
>
An alternative an executable example in a User's Guide.  I learned the
HLASM I/O exits from an example I copied/pasted from a manual.

--
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Seymour J Metz
Just seeing if you were aweake. That's my story and I'm sticking to it. Some of 
the IBM internal use BSL documents were dated 1967.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Charles Mills [charl...@mcn.org]
Sent: Tuesday, March 22, 2022 6:45 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

Wow! 1867. Who knew. Was there a version for the Dial Time Recorder Clock?

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
Behalf Of Seymour J Metz
Sent: Tuesday, March 22, 2022 3:31 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

While much of PL/s should be highly portable, GENERATE is very much
architecture dependent.

PL.S, in the guise of BSL, goes back at least to the development of TSO and
at least back to 1867.

Some of the relevant manuals are ZZ, meaning IBM confidential, but some are
GC, meaning publicly available, although still subject to copyright.


--
Shmuel (Seymour J.) Metz
https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7C88d767ca4b18498fdb7e08da0c55c45c%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637835859755380495%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=V9nrwiDZO8PDB9JEA8aSzh2hy8OulvTgt3s%2FnEnMQ0Y%3Dreserved=0


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of
Tony Harminc [t...@harminc.net]
Sent: Tuesday, March 22, 2022 1:52 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 at 11:07, Jay Maynard  wrote:
>
> I never understood why IBM kept PL/S such a deep dark secret.

[See below.]

> Regardless, PL/S is intimately tied to the 370 and subsequent
> architectures, and C is not.

I'm not sure how intimately. There were dialects of PL/S for the 8100
(DPPX), and I think for the 37xx communication controllers. But in any
case PL/S syntax is clearly based on that of PL/I, and that is
certainly a highly portable language.

It's also arguable that C is tied closely to the PDP11 and similar
architectures, and only by ugly adaptations was it able to run on
other platforms.

> C also came out much earlier than PL/S, starting in about 1970.

I don't think so.

Both PL/S and C had predecessor languages that differed to various
degrees. C had B and BCPL, from which C had very substantial
differences. PL/S had BSL, which really wasn't much different from
PL/S or even current PL/X (or whatever it's called these days). Both
languages also have later dialects and/or offspring (e.g. PL.8, C++),
and that history is complex.

Wikipedia says that C dates from 1972. For PL/S it just says "the late
1960s", but there is BSL material on Bitsavers dated 1969, and a "BSL
Library" document from October 1967 which is not BSL itself, but
clearly refers to its existence.

[Some of the PL/S documents on Bitsavers are the very same ones that
had escaped to the wild and that IBM was chasing down around 1975.
That they felt at the time that it was worth flying a team of
blue-suited lawyers from Armonk around North America to try to get
hold of fuzzy photocopies of BSL manuals does suggest that it was
pretty important to them. I think this predated both the Fujitsu and
Rand situations, but perhaps IBM was already aware of both efforts.]

PL/eaSe:
https://secure-web.cisco.com/1go2uHy-5yje8uqO2LaJUG-mISUqm2gS44XVUp-kQHA1pCD
F5Bkst52bGgwQKgD4mN95xQfT-X-S56hVPNHD67rlt7PGyQCC6vzCK3LBs-usgUFcEOOcofsfAbP
IAHyjgtl6cn3X2F1eL-KE__GhehAJvB6zcYx6cP2TYnRzTjBvQyDg1ch1eVXYzG2w52BW_SHXNyr
m4P38kDkgFXZiWglXzhx8wlUIe_2rSfiyUjotiTRF9ZMdflYnUg0YmzYV3-qYVeoCp4LgbROUzGB
wncwSJdyxf9HfO0JtLhPaAZhnxBzfYIvHo0ojdMeJzvpZmNJvFLVdeiI8nFI_MKtr4bJq-2WHJT9
vzgo2FJ20lQAP-6Uo2yAR__HoS9LiwiH8xi0B4O21KJxo5NieyRL-28K9Qtv8P_Jo4zfzxd0-8cy
gj8pdRzYjRJd6NdE9TiJcX/https%3A%2F%2Fhttp://secure-web.cisco.com/1weAfPq5D-nQbPEDsOcDqtnGX_HPRp_aOyGtJVF7qvgSTHGuRKM6ezNKjTCA5FN9dNoZGj_GzKB8x6JOLtgRuTcyuhRSYg9y_HuojI2PnFRBmEFipAtC1MGR3QcQ0ktd7shtCYcV8RAcElvjSTjH3w9ATj4r1KqV9J0iIXbLz-klKMvQ7-gW8TZLuhcXcokd1Ax2SWXDqK477jS6wizWXxa6n1jZ4tEGthufTnE5Y4vC4fC5ImFOBm7q3I1Vj98QTgtNuGASTobpZBUUcDa2lD_eYfCBzfVI9Ef32yxY_xiQYy3OxKRXlhtYh7kVS6pQApzjTnvo5zn2Qb_1rx6CMlxS0yFO69BJ59i9W9zKkmwCa4cR5kLVdv_KH6xNAkaTrjwJJ9UEH6qT0XLZ-plHIUhKQAu6HJrz5_H46HrXXR4ALq8mlj3eKHSYo3OUU77xP/http%3A%2F%2Fwww.mxg.com%2Fthebuttonman%2Fhtml%2Fbut
ton196.htm
Rand's answer:
https://secure-web.cisco.com/1y98GLznZFAPwsK3MR0lKo8vFRTlM-Vyfid72ddxIigrfdS
ApIBAeRzJISYdjN0E5JPX_yrz9EkNrKoc-kgWXcBsJMrBWTUldhn4Dkq_mBIg1U8-VA4tmlh5V9A
cVOtLIrKxDubfNnrAzV6lquQEb3G_7Gvw1IPcgQthcpt8AZVuL8c_kgY5XYN-VsEZyCKji_ZyCiU
BxM2sq

Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Charles Mills
Wow! 1867. Who knew. Was there a version for the Dial Time Recorder Clock?

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
Behalf Of Seymour J Metz
Sent: Tuesday, March 22, 2022 3:31 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

While much of PL/s should be highly portable, GENERATE is very much
architecture dependent.

PL.S, in the guise of BSL, goes back at least to the development of TSO and
at least back to 1867.

Some of the relevant manuals are ZZ, meaning IBM confidential, but some are
GC, meaning publicly available, although still subject to copyright. 


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of
Tony Harminc [t...@harminc.net]
Sent: Tuesday, March 22, 2022 1:52 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 at 11:07, Jay Maynard  wrote:
>
> I never understood why IBM kept PL/S such a deep dark secret.

[See below.]

> Regardless, PL/S is intimately tied to the 370 and subsequent
> architectures, and C is not.

I'm not sure how intimately. There were dialects of PL/S for the 8100
(DPPX), and I think for the 37xx communication controllers. But in any
case PL/S syntax is clearly based on that of PL/I, and that is
certainly a highly portable language.

It's also arguable that C is tied closely to the PDP11 and similar
architectures, and only by ugly adaptations was it able to run on
other platforms.

> C also came out much earlier than PL/S, starting in about 1970.

I don't think so.

Both PL/S and C had predecessor languages that differed to various
degrees. C had B and BCPL, from which C had very substantial
differences. PL/S had BSL, which really wasn't much different from
PL/S or even current PL/X (or whatever it's called these days). Both
languages also have later dialects and/or offspring (e.g. PL.8, C++),
and that history is complex.

Wikipedia says that C dates from 1972. For PL/S it just says "the late
1960s", but there is BSL material on Bitsavers dated 1969, and a "BSL
Library" document from October 1967 which is not BSL itself, but
clearly refers to its existence.

[Some of the PL/S documents on Bitsavers are the very same ones that
had escaped to the wild and that IBM was chasing down around 1975.
That they felt at the time that it was worth flying a team of
blue-suited lawyers from Armonk around North America to try to get
hold of fuzzy photocopies of BSL manuals does suggest that it was
pretty important to them. I think this predated both the Fujitsu and
Rand situations, but perhaps IBM was already aware of both efforts.]

PL/eaSe:
https://secure-web.cisco.com/1go2uHy-5yje8uqO2LaJUG-mISUqm2gS44XVUp-kQHA1pCD
F5Bkst52bGgwQKgD4mN95xQfT-X-S56hVPNHD67rlt7PGyQCC6vzCK3LBs-usgUFcEOOcofsfAbP
IAHyjgtl6cn3X2F1eL-KE__GhehAJvB6zcYx6cP2TYnRzTjBvQyDg1ch1eVXYzG2w52BW_SHXNyr
m4P38kDkgFXZiWglXzhx8wlUIe_2rSfiyUjotiTRF9ZMdflYnUg0YmzYV3-qYVeoCp4LgbROUzGB
wncwSJdyxf9HfO0JtLhPaAZhnxBzfYIvHo0ojdMeJzvpZmNJvFLVdeiI8nFI_MKtr4bJq-2WHJT9
vzgo2FJ20lQAP-6Uo2yAR__HoS9LiwiH8xi0B4O21KJxo5NieyRL-28K9Qtv8P_Jo4zfzxd0-8cy
gj8pdRzYjRJd6NdE9TiJcX/https%3A%2F%2Fwww.mxg.com%2Fthebuttonman%2Fhtml%2Fbut
ton196.htm
Rand's answer:
https://secure-web.cisco.com/1y98GLznZFAPwsK3MR0lKo8vFRTlM-Vyfid72ddxIigrfdS
ApIBAeRzJISYdjN0E5JPX_yrz9EkNrKoc-kgWXcBsJMrBWTUldhn4Dkq_mBIg1U8-VA4tmlh5V9A
cVOtLIrKxDubfNnrAzV6lquQEb3G_7Gvw1IPcgQthcpt8AZVuL8c_kgY5XYN-VsEZyCKji_ZyCiU
BxM2sq_vnQBywD4xw_wAv39d2fS3a-9uMijMVum6s-MzxTvp2pfQgi8ckDkV4atDiTUqTeHu8_wb
zaZowyal5Umh-Wsmhmi4_-OaPQKMF2agA13nvl3UkPAyyrdnD9MWhoA7E9CcoNHMuYQP7n9Z7-OD
wlnAKLB4_OuZMfYTep6Vz_-EsQnBOi9EpD1LVn_o7FY0hjyDnXR8OBv4F189ZIFZKZK504oXLbq2
35B-XAZTZSZoRxhwFToYPQ/https%3A%2F%2Fwww.mxg.com%2Fthebuttonman%2Fhtml%2Fbut
ton213.htm

https://secure-web.cisco.com/1K1TClFFuiCkEmuQK1z77FgzwLRTvYxO0wJ30JFYi0Y3qSE
V98cSJnn2mQCetCVpa65fjRV9o8c3QIjmkyFg0f68s-b1kBy38u6K6Y2c14ktZzc7qMkJrYFHy50
DVd2nyC3PjfcWJEgcGEUHeUQ9ZZv-H8LPfC0ID4JE-FnnTUg7imwEeqZHn25Uz1URUdJjtQa0pEV
kADgB-v_JW385y2l6mmwMVHZfb8CN6W8nRdQHleI9leFZ3_Yd97p6MiEQ1f0ws37i1d2eBil_u1o
OjpEMXgtQ8MdkoBpj-FmSO-S3S2xI_sffSn4T9mk5TgTOfO67yE51TWXBAzXrVw6MXjxST-fPAa4
a2S1_ThTtxUCsPaWIbEAU-HW3RN5Ut2f4npEzAeWefwa0tg9u4gl9JERLm5wMPBESTKLyym342db
hkRJKtbfnaYIyD60b2kGlb/https%3A%2F%2Fwww.mxg.com%2Fthebuttonman%2Fsearch.asp

Tony H.

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Seymour J Metz
Actually, ArcaOS from Arca Noae is most current. Some of the open source 
components are maintained by, e.g., BitWise Works, Netlabs.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Mike Beer [m...@beer.at]
Sent: Tuesday, March 22, 2022 1:09 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: AW: looking for 'how to' developing Rexx host command

https://secure-web.cisco.com/1Fqw7ZXsIsu8QxLRexc7kwyiuWXRDgriUkn7uyq-awRFV8WBYJx-XP_7mBxjDL-MNkgesu50O3R-FZ7Us-YebAhp8IQ4o6cLHkN0Qlxr2hFguIQGX1qYR5_nEQqIwMOIX1-3cX98NX7fMDtmaVHiPSqM6bhfA64QeINZG2GMzOEqf3wkLDotPuaHGDTetg5oq2CgF_uS048TiWwdWdH8pBq-DMByimGexepRgYNhgumrMxGMa4nOqSOyYsSUqwDJRJdfO6CerF0UJDGL-0apw2YefmLQN9q16WgSYlzVRtctK1tiKy0hxmfnkA3qmSAGDzZBouodJK_8HTJTYjarB-iNNzthAr2wm9aXi9IMF4byE-28ZXqqrsK18c9NFoQRKVaQPVp0CdFM7flPKHMIpIajd2wQlD8juaWHMra6-LEkDTqtTp1VCrAIJU5urLiH0/https%3A%2F%2Fwww.ecomstation.com%2F
 is the current OS/2

-Ursprüngliche Nachricht-
Von: IBM Mainframe Discussion List  Im Auftrag von 
Paul Gilmartin
Gesendet: Tuesday, March 22, 2022 18:06
An: IBM-MAIN@LISTSERV.UA.EDU
Betreff: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 10:06:34 -0500, Jay Maynard wrote:

>I never understood why IBM kept PL/S such a deep dark secret.
>
Fear of RCA?

>Regardless, PL/S is intimately tied to the 370 and subsequent
>architectures, and C is not. C also came out much earlier than PL/S,
>starting in about 1970.
>
A co-worker told me that PL/S was available (IBM-internal) under OS/2.  And 
that SuperC was written in PL/S and runs alike on OS/2 and MVS.

Who owns OS/2 nowadays?  Is there any active development on the kernel?

--
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Seymour J Metz
Arca Noae has a support contract with IBM but AFAIK doesn't have access to the 
kernel source. They have replaced a lot of the low level code with their own 
versions.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Mike Beer [m...@beer.at]
Sent: Tuesday, March 22, 2022 1:16 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: AW: looking for 'how to' developing Rexx host command

There seems to be a newer offering for OS/2
https://secure-web.cisco.com/1A8XwvVb57NoGBymPiB30svoTNgB8STH-vTBl4JqOjN7DmjC1sOLhpHMoZBq4hVP0xLRl28CUqBxi-72HkpWjXIf8eyBG8hx3b91Pjg_N_Ij79KwZonOKEdN89Qls9AIzx3UODwdK1K1igIrxck4uP0dFFFLOZ5SAbn5MlUwsTEcPGTR7-gyRxPn8rpNeDIbU7Z1jWn3x6n7ujOZtXpfH2hc6pTELy-lQPdE4W5juYvqeby1H3j9HN3Ik0WFnnBY4uxCTh1syKj5Y6FIvIUARoznxWe-ZxQWUbyew3bo9sHeTcR3co8K78ukHDJRL9RuntXSBQkBYS0OICgLr1XHmjm6wMM9trFwBtkzgwMJ3jXo3jPhR6uYw-Y4nilSDXuE2CtgXRrexZ6TwpkKVlEOKKZ283icE45wjOpI6Ija7FkyGtd3zp6fbCO7eSqarS_AE/https%3A%2F%2Fwww.arcanoae.com%2F


-Ursprüngliche Nachricht-
Von: IBM Mainframe Discussion List  Im Auftrag von 
Paul Gilmartin
Gesendet: Tuesday, March 22, 2022 18:06
An: IBM-MAIN@LISTSERV.UA.EDU
Betreff: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 10:06:34 -0500, Jay Maynard wrote:

>I never understood why IBM kept PL/S such a deep dark secret.
>
Fear of RCA?

>Regardless, PL/S is intimately tied to the 370 and subsequent
>architectures, and C is not. C also came out much earlier than PL/S,
>starting in about 1970.
>
A co-worker told me that PL/S was available (IBM-internal) under OS/2.  And 
that SuperC was written in PL/S and runs alike on OS/2 and MVS.

Who owns OS/2 nowadays?  Is there any active development on the kernel?

--
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Seymour J Metz
While much of PL/s should be highly portable, GENERATE is very much 
architecture dependent.

PL.S, in the guise of BSL, goes back at least to the development of TSO and at 
least back to 1867.

Some of the relevant manuals are ZZ, meaning IBM confidential, but some are GC, 
meaning publicly available, although still subject to copyright. 


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Tony Harminc [t...@harminc.net]
Sent: Tuesday, March 22, 2022 1:52 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 at 11:07, Jay Maynard  wrote:
>
> I never understood why IBM kept PL/S such a deep dark secret.

[See below.]

> Regardless, PL/S is intimately tied to the 370 and subsequent
> architectures, and C is not.

I'm not sure how intimately. There were dialects of PL/S for the 8100
(DPPX), and I think for the 37xx communication controllers. But in any
case PL/S syntax is clearly based on that of PL/I, and that is
certainly a highly portable language.

It's also arguable that C is tied closely to the PDP11 and similar
architectures, and only by ugly adaptations was it able to run on
other platforms.

> C also came out much earlier than PL/S, starting in about 1970.

I don't think so.

Both PL/S and C had predecessor languages that differed to various
degrees. C had B and BCPL, from which C had very substantial
differences. PL/S had BSL, which really wasn't much different from
PL/S or even current PL/X (or whatever it's called these days). Both
languages also have later dialects and/or offspring (e.g. PL.8, C++),
and that history is complex.

Wikipedia says that C dates from 1972. For PL/S it just says "the late
1960s", but there is BSL material on Bitsavers dated 1969, and a "BSL
Library" document from October 1967 which is not BSL itself, but
clearly refers to its existence.

[Some of the PL/S documents on Bitsavers are the very same ones that
had escaped to the wild and that IBM was chasing down around 1975.
That they felt at the time that it was worth flying a team of
blue-suited lawyers from Armonk around North America to try to get
hold of fuzzy photocopies of BSL manuals does suggest that it was
pretty important to them. I think this predated both the Fujitsu and
Rand situations, but perhaps IBM was already aware of both efforts.]

PL/eaSe: 
https://secure-web.cisco.com/1go2uHy-5yje8uqO2LaJUG-mISUqm2gS44XVUp-kQHA1pCDF5Bkst52bGgwQKgD4mN95xQfT-X-S56hVPNHD67rlt7PGyQCC6vzCK3LBs-usgUFcEOOcofsfAbPIAHyjgtl6cn3X2F1eL-KE__GhehAJvB6zcYx6cP2TYnRzTjBvQyDg1ch1eVXYzG2w52BW_SHXNyrm4P38kDkgFXZiWglXzhx8wlUIe_2rSfiyUjotiTRF9ZMdflYnUg0YmzYV3-qYVeoCp4LgbROUzGBwncwSJdyxf9HfO0JtLhPaAZhnxBzfYIvHo0ojdMeJzvpZmNJvFLVdeiI8nFI_MKtr4bJq-2WHJT9vzgo2FJ20lQAP-6Uo2yAR__HoS9LiwiH8xi0B4O21KJxo5NieyRL-28K9Qtv8P_Jo4zfzxd0-8cygj8pdRzYjRJd6NdE9TiJcX/https%3A%2F%2Fwww.mxg.com%2Fthebuttonman%2Fhtml%2Fbutton196.htm
Rand's answer:  
https://secure-web.cisco.com/1y98GLznZFAPwsK3MR0lKo8vFRTlM-Vyfid72ddxIigrfdSApIBAeRzJISYdjN0E5JPX_yrz9EkNrKoc-kgWXcBsJMrBWTUldhn4Dkq_mBIg1U8-VA4tmlh5V9AcVOtLIrKxDubfNnrAzV6lquQEb3G_7Gvw1IPcgQthcpt8AZVuL8c_kgY5XYN-VsEZyCKji_ZyCiUBxM2sq_vnQBywD4xw_wAv39d2fS3a-9uMijMVum6s-MzxTvp2pfQgi8ckDkV4atDiTUqTeHu8_wbzaZowyal5Umh-Wsmhmi4_-OaPQKMF2agA13nvl3UkPAyyrdnD9MWhoA7E9CcoNHMuYQP7n9Z7-ODwlnAKLB4_OuZMfYTep6Vz_-EsQnBOi9EpD1LVn_o7FY0hjyDnXR8OBv4F189ZIFZKZK504oXLbq235B-XAZTZSZoRxhwFToYPQ/https%3A%2F%2Fwww.mxg.com%2Fthebuttonman%2Fhtml%2Fbutton213.htm

https://secure-web.cisco.com/1K1TClFFuiCkEmuQK1z77FgzwLRTvYxO0wJ30JFYi0Y3qSEV98cSJnn2mQCetCVpa65fjRV9o8c3QIjmkyFg0f68s-b1kBy38u6K6Y2c14ktZzc7qMkJrYFHy50DVd2nyC3PjfcWJEgcGEUHeUQ9ZZv-H8LPfC0ID4JE-FnnTUg7imwEeqZHn25Uz1URUdJjtQa0pEVkADgB-v_JW385y2l6mmwMVHZfb8CN6W8nRdQHleI9leFZ3_Yd97p6MiEQ1f0ws37i1d2eBil_u1oOjpEMXgtQ8MdkoBpj-FmSO-S3S2xI_sffSn4T9mk5TgTOfO67yE51TWXBAzXrVw6MXjxST-fPAa4a2S1_ThTtxUCsPaWIbEAU-HW3RN5Ut2f4npEzAeWefwa0tg9u4gl9JERLm5wMPBESTKLyym342dbhkRJKtbfnaYIyD60b2kGlb/https%3A%2F%2Fwww.mxg.com%2Fthebuttonman%2Fsearch.asp

Tony H.

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Charles Mills
We discussed this on a thread here six months (?) ago. IBM made PL/X (PL/S?) 
available to ISVs back in the eighties or nineties. I have forgotten the terms. 
I made the decision not to make a business commitment to an unsupported 
product. 

Charles

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Paul Gilmartin
Sent: Tuesday, March 22, 2022 10:06 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 10:06:34 -0500, Jay Maynard wrote:

>I never understood why IBM kept PL/S such a deep dark secret.
>
Fear of RCA?

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Tony Harminc
On Tue, 22 Mar 2022 at 11:07, Jay Maynard  wrote:
>
> I never understood why IBM kept PL/S such a deep dark secret.

[See below.]

> Regardless, PL/S is intimately tied to the 370 and subsequent
> architectures, and C is not.

I'm not sure how intimately. There were dialects of PL/S for the 8100
(DPPX), and I think for the 37xx communication controllers. But in any
case PL/S syntax is clearly based on that of PL/I, and that is
certainly a highly portable language.

It's also arguable that C is tied closely to the PDP11 and similar
architectures, and only by ugly adaptations was it able to run on
other platforms.

> C also came out much earlier than PL/S, starting in about 1970.

I don't think so.

Both PL/S and C had predecessor languages that differed to various
degrees. C had B and BCPL, from which C had very substantial
differences. PL/S had BSL, which really wasn't much different from
PL/S or even current PL/X (or whatever it's called these days). Both
languages also have later dialects and/or offspring (e.g. PL.8, C++),
and that history is complex.

Wikipedia says that C dates from 1972. For PL/S it just says "the late
1960s", but there is BSL material on Bitsavers dated 1969, and a "BSL
Library" document from October 1967 which is not BSL itself, but
clearly refers to its existence.

[Some of the PL/S documents on Bitsavers are the very same ones that
had escaped to the wild and that IBM was chasing down around 1975.
That they felt at the time that it was worth flying a team of
blue-suited lawyers from Armonk around North America to try to get
hold of fuzzy photocopies of BSL manuals does suggest that it was
pretty important to them. I think this predated both the Fujitsu and
Rand situations, but perhaps IBM was already aware of both efforts.]

PL/eaSe: https://www.mxg.com/thebuttonman/html/button196.htm
Rand's answer:  https://www.mxg.com/thebuttonman/html/button213.htm

https://www.mxg.com/thebuttonman/search.asp

Tony H.

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


AW: looking for 'how to' developing Rexx host command

2022-03-22 Thread Mike Beer
There seems to be a newer offering for OS/2
https://www.arcanoae.com/


-Ursprüngliche Nachricht-
Von: IBM Mainframe Discussion List  Im Auftrag von 
Paul Gilmartin
Gesendet: Tuesday, March 22, 2022 18:06
An: IBM-MAIN@LISTSERV.UA.EDU
Betreff: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 10:06:34 -0500, Jay Maynard wrote:

>I never understood why IBM kept PL/S such a deep dark secret.
>
Fear of RCA?

>Regardless, PL/S is intimately tied to the 370 and subsequent 
>architectures, and C is not. C also came out much earlier than PL/S, 
>starting in about 1970.
>
A co-worker told me that PL/S was available (IBM-internal) under OS/2.  And 
that SuperC was written in PL/S and runs alike on OS/2 and MVS.

Who owns OS/2 nowadays?  Is there any active development on the kernel?

--
gil

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


AW: looking for 'how to' developing Rexx host command

2022-03-22 Thread Mike Beer
https://www.ecomstation.com/ is the current OS/2

-Ursprüngliche Nachricht-
Von: IBM Mainframe Discussion List  Im Auftrag von 
Paul Gilmartin
Gesendet: Tuesday, March 22, 2022 18:06
An: IBM-MAIN@LISTSERV.UA.EDU
Betreff: Re: looking for 'how to' developing Rexx host command

On Tue, 22 Mar 2022 10:06:34 -0500, Jay Maynard wrote:

>I never understood why IBM kept PL/S such a deep dark secret.
>
Fear of RCA?

>Regardless, PL/S is intimately tied to the 370 and subsequent 
>architectures, and C is not. C also came out much earlier than PL/S, 
>starting in about 1970.
>
A co-worker told me that PL/S was available (IBM-internal) under OS/2.  And 
that SuperC was written in PL/S and runs alike on OS/2 and MVS.

Who owns OS/2 nowadays?  Is there any active development on the kernel?

--
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Paul Gilmartin
On Tue, 22 Mar 2022 10:06:34 -0500, Jay Maynard wrote:

>I never understood why IBM kept PL/S such a deep dark secret.
>
Fear of RCA?

>Regardless, PL/S is intimately tied to the 370 and subsequent
>architectures, and C is not. C also came out much earlier than PL/S,
>starting in about 1970.
>
A co-worker told me that PL/S was available (IBM-internal) under
OS/2.  And that SuperC was written in PL/S and runs alike on OS/2
and MVS.

Who owns OS/2 nowadays?  Is there any active development on the
kernel?

-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Charles Mills
Yes! Good grief. C happened utterly independently of mainframes. Mainframes 
after all had PL/I ... and C happened anyway. Intel had a language called PL/M 
-- I used it, basically an extreme PL/I subset -- and C happened anyway.

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Jay Maynard
Sent: Tuesday, March 22, 2022 8:07 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

I never understood why IBM kept PL/S such a deep dark secret.

Regardless, PL/S is intimately tied to the 370 and subsequent
architectures, and C is not. C also came out much earlier than PL/S,
starting in about 1970.

On Tue, Mar 22, 2022 at 9:59 AM Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu> wrote:

> On Tue, 22 Mar 2022 14:32:35 +, Farley, Peter x23353  wrote:
>
> >+1 for MetalC.  Puts it all under your control.
> >
> I don't know the chronology, but I wonder whether if IBM had
> made PL/S a product early enough, C would never have happened.
>
> >+10 for SAMPLIB members in MetalC, not that any such are very likely to
> be provided in what's left of our working lifetimes.
> >
> An alternative an executable example in a User's Guide.  I learned the
> HLASM I/O exits from an example I copied/pasted from a manual.
>
> --
> gil
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


-- 
Jay Maynard

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Jay Maynard
I never understood why IBM kept PL/S such a deep dark secret.

Regardless, PL/S is intimately tied to the 370 and subsequent
architectures, and C is not. C also came out much earlier than PL/S,
starting in about 1970.

On Tue, Mar 22, 2022 at 9:59 AM Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu> wrote:

> On Tue, 22 Mar 2022 14:32:35 +, Farley, Peter x23353  wrote:
>
> >+1 for MetalC.  Puts it all under your control.
> >
> I don't know the chronology, but I wonder whether if IBM had
> made PL/S a product early enough, C would never have happened.
>
> >+10 for SAMPLIB members in MetalC, not that any such are very likely to
> be provided in what's left of our working lifetimes.
> >
> An alternative an executable example in a User's Guide.  I learned the
> HLASM I/O exits from an example I copied/pasted from a manual.
>
> --
> gil
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


-- 
Jay Maynard

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Paul Gilmartin
On Tue, 22 Mar 2022 14:32:35 +, Farley, Peter x23353  wrote:

>+1 for MetalC.  Puts it all under your control.
> 
I don't know the chronology, but I wonder whether if IBM had
made PL/S a product early enough, C would never have happened.

>+10 for SAMPLIB members in MetalC, not that any such are very likely to be 
>provided in what's left of our working lifetimes.
> 
An alternative an executable example in a User's Guide.  I learned the
HLASM I/O exits from an example I copied/pasted from a manual.

-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Farley, Peter x23353
+1 for MetalC.  Puts it all under your control.

+10 for SAMPLIB members in MetalC, not that any such are very likely to be 
provided in what's left of our working lifetimes.

Peter

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Paul Gilmartin
Sent: Tuesday, March 22, 2022 9:31 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

EXTERNAL EMAIL

On Mon, 21 Mar 2022 11:35:51 +0800, David Crayford wrote:
>> >
>> Wouldn't a SAMPLIB member be nice?  In a HLL?
>
>Writing a REXX command processor in a HLL is non-trivial to do correctly. I've 
>done it a few times and it requires creating a persistent LE environment  ...
>
Well, then, Metal-C?

RFE for SAMPLIB members?

--

This message and any attachments are intended only for the use of the addressee 
and may contain information that is privileged and confidential. If the reader 
of the message is not the intended recipient or an authorized representative of 
the intended recipient, you are hereby notified that any dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please notify us immediately by e-mail and delete the message and any 
attachments from your system.


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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Paul Gilmartin
On Mon, 21 Mar 2022 11:35:51 +0800, David Crayford wrote:
>> >
>> Wouldn't a SAMPLIB member be nice?  In a HLL?
>
>Writing a REXX command processor in a HLL is non-trivial to do correctly. I've 
>done it a few times and it requires creating a persistent LE environment  ...
>
Well, then, Metal-C?

RFE for SAMPLIB members?

-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Seymour J Metz
We'll have to agree to disagree on whether restricted backtracking is 
desirable. IMHO it greatly restricts the expressive power and utility of the 
language.

BTW, while I find the *ix syntax for refexen to be unduly terse, PEG suffers 
from the same fault; in fact, PEG and regex syntax are very similar. I'd much 
prefer something along the lines of Icon.


--
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: Tuesday, March 22, 2022 7:09 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

It’s restricted backtracking which is desirable and a much better 
implementation than regex 
https://secure-web.cisco.com/1swO48l1_JB99CkRa7AMmDq2Z0sGAFRLPab3VIIcfgUnux20kM6PQg8QhPaddTUOao6BuHgnugd-htzOobi6JBCFXLG4Aw2UYQYWL-MuMiD-ZPGACexqeNy3dDMhXL5viUfxY3jOpw2zCkFeRv1ZB2Fyext2w9HrC4q8aeAuWOUkKbcpRDF-wUkyqNNzmUl-Qv-jAxpPXm-W_yZD0Y7D-FOkMubanuZaHFMGziJYNL85TyJx_RqB4a3qG4UZPIzvf_A6AdBZhuQnUcKAZq440h6Cmf6Kk1FBKzpAYptArppxx-zOnzF9XGe_AYzYDl3giARQptMDgIGVYTPMfPOS6bd68-cd55XpGsrd6QD97WYP1KyJT4bsPItZwCRZgNNJaQpSOopSNLLaT2rZBX9lUKliAN1A3I5BnjxEC-wjkNGAK1y85Z8jzy7R4sOnZmCuLyyR_5dYDYxRjyDsL5tF_Ww/https%3A%2F%2Fwww.sobyte.net%2Fpost%2F2022-01%2Flpeg%2F.
 Regular expressions are fine for simple use cases but suck when they become 
complex. They are also slow and blared which is why everybody uses PEGs these 
days.

> On 22 Mar 2022, at 18:55, Seymour J Metz  wrote:
>
> Hm, the article explicitly mentions contexts in which PEGs don't backtrack 
> but instead do greedy matching. In Perl, greedy matching is available if you 
> need it but is not the norm.
>
>
> --
> Shmuel (Seymour J.) Metz
> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7C4c197eb4e4a04d26a9f808da0bf486d6%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637835442120805500%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=w78MjUxtKqWrD6eW97hd39agqHvBGvU9U1ylC2H9arI%3Dreserved=0
>
> 
> From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> David Crayford [dcrayf...@gmail.com]
> Sent: Monday, March 21, 2022 10:12 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
>
>> On Mon, 2022-03-21 at 13:33 +, Seymour J Metz wrote:
>> I just read the wiki artlice [[Parsing expression grammar]] and don't see 
>> either the sophistication or the ease of use compared to regexen. I've come 
>> to rely on named captures and backtracking, both
>> of which seem to be missing.
>
> Absolutely not. Depending on the library it's trivial to support named 
> captures within named captures 
> http://secure-web.cisco.com/1pDw906RvgdZxwW-QAEwZVgBdvkJGRrcGKbuoM_TdwgoBeW3Z55X8fS2im3k0c5R5U6qsEXk9asWW1HUfxN9dtI2zv_Ngos--f2Am86zaajaxDZrOInyLvR8tCMHaFDZRHk7tTsH10uKMqWRO1P0fQZncGO5DnJwzxkh6fcdOUxUycX64-3s_Z5MLmWkQ4YJ8QI2PAD0RNl86JJbdYHKlIaU8tOLuY2qjk3ZevVEI0l9bP3dNEmon3N8iIHS7k3Tq5-X4cUf_1yWZQAPjmgm4dsqQDCvdanw6s44hzVLRQjv4dwuSf_gmqak_hqEzkFjo31RK8HTfprGsToGW102HQhDXeGfWDlnXK1791cGZyCf3KvwdJtQsOKemboglVwH8RsXUyHbiv7i9cDdx89-bwYUFUirBHHKOVMand591UMM2weqvabSC5WH-C3-7GQq4/http%3A%2F%2Flua-users.org%2Flists%2Flua-l%2F2010-02%2Fmsg00493.html.
>  Backtracking is equally trivial. PEGs
> support recursive decent grammars. The problem with regular expressions is 
> that they don't scale. For example, using PEGs it's simple to functionally 
> decompose a tricky grammar such as validating a IP
> address, which may be either a hostname, IPv4 or IPv6 [1]. Using a regex just 
> to validate IPv6 is an intractable mess [2]. PEGs are super powerful which is 
> why they are used to write the parsers for
> programming language, including perl 6 (does anybody use perl 6?).
>
> [1] 
> https://secure-web.cisco.com/1Xbxffegrzqy1wsHqwA5cU-KOU9n7zP24xIi7xg7LsSSjHKvo17YCZzDlJ_lefeFbH7zoYceR29G1JFEgWJct-WIhShL5LEr7j4y5OfaUVIZAjQZWt_QApgb6k8mBMWbXKrpWH-OVcwb5-HVfd8c89DY0xUtTuvS0PWA1gu--8neKwUbyB8AZgO3EwED3mBQ1eb1zlSlrSz5EZy32kmgFwP_tr3e7OJW5WLFPVTBdsHBUs8tChQszuRBCFpazD3QtkM69ORRakWdsHQtGGlk463rujfN5BkLTn4Do5RQvkJ4Vevfq3MBG28XgSyQu2q6zIUEjsg3bS1GOafKyiBDdKcKMopKrTE-mxsm9HKGsmY3liyg88yoruz0woY-wKDXYmmSYGqCNzilTSrMCgb5HxZ0Xx5OiEpjVAEXXTCdHFbYNXUvjsU3BfVb-iB3OIJRB/https%3A%2F%2Fgithub.com%2Fmozilla-services%2Flua_sandbox_extensions%2Fblob%2Fmain%2Flpeg%2Fmodules%2Flpeg%2Fip_address.lua
> [2] 
> https://secure-web.cisco.com/1Y9ylsi7oDYzVEtak_RKC4Bpe3nJInxwZQvniOUCH9eaKfXdJZzvlIG1gCWvCTYjsPEgXg3hpQM8naAUGVQhdD1dUJKjNSy0_XxZ1pi0VyQ3ba0q49XHGe-41TtV_933pPvGSWwuBQPat7BwUL8eZE7O8FnlizFEuU130qedgRoUpsxMMHIB2nqYDHiSfe1

Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread David Crayford
It’s restricted backtracking which is desirable and a much better 
implementation than regex https://www.sobyte.net/post/2022-01/lpeg/. Regular 
expressions are fine for simple use cases but suck when they become complex. 
They are also slow and blared which is why everybody uses PEGs these days. 

> On 22 Mar 2022, at 18:55, Seymour J Metz  wrote:
> 
> Hm, the article explicitly mentions contexts in which PEGs don't backtrack 
> but instead do greedy matching. In Perl, greedy matching is available if you 
> need it but is not the norm.
> 
> 
> --
> 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: Monday, March 21, 2022 10:12 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
> 
>> On Mon, 2022-03-21 at 13:33 +, Seymour J Metz wrote:
>> I just read the wiki artlice [[Parsing expression grammar]] and don't see 
>> either the sophistication or the ease of use compared to regexen. I've come 
>> to rely on named captures and backtracking, both
>> of which seem to be missing.
> 
> Absolutely not. Depending on the library it's trivial to support named 
> captures within named captures 
> http://secure-web.cisco.com/1pDw906RvgdZxwW-QAEwZVgBdvkJGRrcGKbuoM_TdwgoBeW3Z55X8fS2im3k0c5R5U6qsEXk9asWW1HUfxN9dtI2zv_Ngos--f2Am86zaajaxDZrOInyLvR8tCMHaFDZRHk7tTsH10uKMqWRO1P0fQZncGO5DnJwzxkh6fcdOUxUycX64-3s_Z5MLmWkQ4YJ8QI2PAD0RNl86JJbdYHKlIaU8tOLuY2qjk3ZevVEI0l9bP3dNEmon3N8iIHS7k3Tq5-X4cUf_1yWZQAPjmgm4dsqQDCvdanw6s44hzVLRQjv4dwuSf_gmqak_hqEzkFjo31RK8HTfprGsToGW102HQhDXeGfWDlnXK1791cGZyCf3KvwdJtQsOKemboglVwH8RsXUyHbiv7i9cDdx89-bwYUFUirBHHKOVMand591UMM2weqvabSC5WH-C3-7GQq4/http%3A%2F%2Flua-users.org%2Flists%2Flua-l%2F2010-02%2Fmsg00493.html.
>  Backtracking is equally trivial. PEGs
> support recursive decent grammars. The problem with regular expressions is 
> that they don't scale. For example, using PEGs it's simple to functionally 
> decompose a tricky grammar such as validating a IP
> address, which may be either a hostname, IPv4 or IPv6 [1]. Using a regex just 
> to validate IPv6 is an intractable mess [2]. PEGs are super powerful which is 
> why they are used to write the parsers for
> programming language, including perl 6 (does anybody use perl 6?).
> 
> [1] 
> https://secure-web.cisco.com/1Xbxffegrzqy1wsHqwA5cU-KOU9n7zP24xIi7xg7LsSSjHKvo17YCZzDlJ_lefeFbH7zoYceR29G1JFEgWJct-WIhShL5LEr7j4y5OfaUVIZAjQZWt_QApgb6k8mBMWbXKrpWH-OVcwb5-HVfd8c89DY0xUtTuvS0PWA1gu--8neKwUbyB8AZgO3EwED3mBQ1eb1zlSlrSz5EZy32kmgFwP_tr3e7OJW5WLFPVTBdsHBUs8tChQszuRBCFpazD3QtkM69ORRakWdsHQtGGlk463rujfN5BkLTn4Do5RQvkJ4Vevfq3MBG28XgSyQu2q6zIUEjsg3bS1GOafKyiBDdKcKMopKrTE-mxsm9HKGsmY3liyg88yoruz0woY-wKDXYmmSYGqCNzilTSrMCgb5HxZ0Xx5OiEpjVAEXXTCdHFbYNXUvjsU3BfVb-iB3OIJRB/https%3A%2F%2Fgithub.com%2Fmozilla-services%2Flua_sandbox_extensions%2Fblob%2Fmain%2Flpeg%2Fmodules%2Flpeg%2Fip_address.lua
> [2] 
> https://secure-web.cisco.com/1Y9ylsi7oDYzVEtak_RKC4Bpe3nJInxwZQvniOUCH9eaKfXdJZzvlIG1gCWvCTYjsPEgXg3hpQM8naAUGVQhdD1dUJKjNSy0_XxZ1pi0VyQ3ba0q49XHGe-41TtV_933pPvGSWwuBQPat7BwUL8eZE7O8FnlizFEuU130qedgRoUpsxMMHIB2nqYDHiSfe1whkO4Y3kAYe9RLkh7EtAgyAOhkPobJuV_BhX09AB07E719jujDVzWAu5qkS75Rm3k2xpO2GA5wHS2Xt7IF9jSbFkTb16sFQWtgjhLX4cytRXnThc_hc9u4jopavvl1490VeWbUZ-amKRRrogEzmSGBThtCmAC2_oVeBo_Eq3Dgw8x7_uUvP5kGAVdR2KTLyHBwEYEBaGRvFvGuzqU4Jn1d-zrdy8L0zGokDAsu4csGjhXGtHizAF0K6owa1qk5mYdaMDfnKvoVYPIIBlLzyIoREg/https%3A%2F%2Fihateregex.io%2Fexpr%2Fipv6%2F
> [3] 
> https://secure-web.cisco.com/1OB5wS1NRw1jlHo8N5C-Q3DstEBbVYWL0ZPFUN6zkkt8Av80k0Tt9ItAVDoNPr_w3nzA3odk3hShvfKIQQUi3N7fMHceP8N_L6i-LghsboQm0U2L-A-53MjmoonmryvVMBnPsEyH2MbIsNa10DtWtjNO7HlGEOC4gWheFSjLiG8aD6rs5sVaT-URzDftolhVUoO7Iy_pIox6ftolAAfXivovbA2L_y9ykfh6h5738mBlrAAfBLdude69vgTf4LuI4VFqBxg-wR8rimBVm2AfjkEEd8uAQcC-bnK65nsd_nVnoEucFLtuu9tOUGYkrO7Wfwd351z2ApuC_jSY3UBlS2vnL22MKinJpIHd3f4L7j3o3u8KlbW3Etmtg8cFBEL3lIZViOGC_NOs2wM5D217jUdstRA4ZczphiERKqR1MGlZ0uLnHRtd-mnj6-qK15AHoked64v1ZBNZhRIpA_29HRQ/https%3A%2F%2Fmetacpan.org%2Fdist%2FPegex%2Fview%2Flib%2FPegex.pod
> 
> 
>> 
>> 
>> --
>> Shmuel (Seymour J.) Metz
>> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7Cfc81a12f723b402dbd1208da0ba967e0%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637835119461225370%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=Utab4%2B9ILG7GO4LChv1ZSpVEzY3OmGCeE%2Fl9VsNJEbc%3Dreserved=0
>> 
>> 
>> From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
>> David Crayford [dcrayf...@gmail.com]
>> Sent: Monday, March 21, 2022 9:08

Re: looking for 'how to' developing Rexx host command

2022-03-22 Thread Seymour J Metz
Hm, the article explicitly mentions contexts in which PEGs don't backtrack but 
instead do greedy matching. In Perl, greedy matching is available if you need 
it but is not the norm.


--
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: Monday, March 21, 2022 10:12 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Mon, 2022-03-21 at 13:33 +, Seymour J Metz wrote:
> I just read the wiki artlice [[Parsing expression grammar]] and don't see 
> either the sophistication or the ease of use compared to regexen. I've come 
> to rely on named captures and backtracking, both
> of which seem to be missing.

Absolutely not. Depending on the library it's trivial to support named captures 
within named captures 
http://secure-web.cisco.com/1pDw906RvgdZxwW-QAEwZVgBdvkJGRrcGKbuoM_TdwgoBeW3Z55X8fS2im3k0c5R5U6qsEXk9asWW1HUfxN9dtI2zv_Ngos--f2Am86zaajaxDZrOInyLvR8tCMHaFDZRHk7tTsH10uKMqWRO1P0fQZncGO5DnJwzxkh6fcdOUxUycX64-3s_Z5MLmWkQ4YJ8QI2PAD0RNl86JJbdYHKlIaU8tOLuY2qjk3ZevVEI0l9bP3dNEmon3N8iIHS7k3Tq5-X4cUf_1yWZQAPjmgm4dsqQDCvdanw6s44hzVLRQjv4dwuSf_gmqak_hqEzkFjo31RK8HTfprGsToGW102HQhDXeGfWDlnXK1791cGZyCf3KvwdJtQsOKemboglVwH8RsXUyHbiv7i9cDdx89-bwYUFUirBHHKOVMand591UMM2weqvabSC5WH-C3-7GQq4/http%3A%2F%2Flua-users.org%2Flists%2Flua-l%2F2010-02%2Fmsg00493.html.
 Backtracking is equally trivial. PEGs
support recursive decent grammars. The problem with regular expressions is that 
they don't scale. For example, using PEGs it's simple to functionally decompose 
a tricky grammar such as validating a IP
address, which may be either a hostname, IPv4 or IPv6 [1]. Using a regex just 
to validate IPv6 is an intractable mess [2]. PEGs are super powerful which is 
why they are used to write the parsers for
programming language, including perl 6 (does anybody use perl 6?).

[1] 
https://secure-web.cisco.com/1Xbxffegrzqy1wsHqwA5cU-KOU9n7zP24xIi7xg7LsSSjHKvo17YCZzDlJ_lefeFbH7zoYceR29G1JFEgWJct-WIhShL5LEr7j4y5OfaUVIZAjQZWt_QApgb6k8mBMWbXKrpWH-OVcwb5-HVfd8c89DY0xUtTuvS0PWA1gu--8neKwUbyB8AZgO3EwED3mBQ1eb1zlSlrSz5EZy32kmgFwP_tr3e7OJW5WLFPVTBdsHBUs8tChQszuRBCFpazD3QtkM69ORRakWdsHQtGGlk463rujfN5BkLTn4Do5RQvkJ4Vevfq3MBG28XgSyQu2q6zIUEjsg3bS1GOafKyiBDdKcKMopKrTE-mxsm9HKGsmY3liyg88yoruz0woY-wKDXYmmSYGqCNzilTSrMCgb5HxZ0Xx5OiEpjVAEXXTCdHFbYNXUvjsU3BfVb-iB3OIJRB/https%3A%2F%2Fgithub.com%2Fmozilla-services%2Flua_sandbox_extensions%2Fblob%2Fmain%2Flpeg%2Fmodules%2Flpeg%2Fip_address.lua
[2] 
https://secure-web.cisco.com/1Y9ylsi7oDYzVEtak_RKC4Bpe3nJInxwZQvniOUCH9eaKfXdJZzvlIG1gCWvCTYjsPEgXg3hpQM8naAUGVQhdD1dUJKjNSy0_XxZ1pi0VyQ3ba0q49XHGe-41TtV_933pPvGSWwuBQPat7BwUL8eZE7O8FnlizFEuU130qedgRoUpsxMMHIB2nqYDHiSfe1whkO4Y3kAYe9RLkh7EtAgyAOhkPobJuV_BhX09AB07E719jujDVzWAu5qkS75Rm3k2xpO2GA5wHS2Xt7IF9jSbFkTb16sFQWtgjhLX4cytRXnThc_hc9u4jopavvl1490VeWbUZ-amKRRrogEzmSGBThtCmAC2_oVeBo_Eq3Dgw8x7_uUvP5kGAVdR2KTLyHBwEYEBaGRvFvGuzqU4Jn1d-zrdy8L0zGokDAsu4csGjhXGtHizAF0K6owa1qk5mYdaMDfnKvoVYPIIBlLzyIoREg/https%3A%2F%2Fihateregex.io%2Fexpr%2Fipv6%2F
[3] 
https://secure-web.cisco.com/1OB5wS1NRw1jlHo8N5C-Q3DstEBbVYWL0ZPFUN6zkkt8Av80k0Tt9ItAVDoNPr_w3nzA3odk3hShvfKIQQUi3N7fMHceP8N_L6i-LghsboQm0U2L-A-53MjmoonmryvVMBnPsEyH2MbIsNa10DtWtjNO7HlGEOC4gWheFSjLiG8aD6rs5sVaT-URzDftolhVUoO7Iy_pIox6ftolAAfXivovbA2L_y9ykfh6h5738mBlrAAfBLdude69vgTf4LuI4VFqBxg-wR8rimBVm2AfjkEEd8uAQcC-bnK65nsd_nVnoEucFLtuu9tOUGYkrO7Wfwd351z2ApuC_jSY3UBlS2vnL22MKinJpIHd3f4L7j3o3u8KlbW3Etmtg8cFBEL3lIZViOGC_NOs2wM5D217jUdstRA4ZczphiERKqR1MGlZ0uLnHRtd-mnj6-qK15AHoked64v1ZBNZhRIpA_29HRQ/https%3A%2F%2Fmetacpan.org%2Fdist%2FPegex%2Fview%2Flib%2FPegex.pod


>
>
> --
> Shmuel (Seymour J.) Metz
> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7Cfc81a12f723b402dbd1208da0ba967e0%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637835119461225370%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=Utab4%2B9ILG7GO4LChv1ZSpVEzY3OmGCeE%2Fl9VsNJEbc%3Dreserved=0
>
> 
> From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> David Crayford [dcrayf...@gmail.com]
> Sent: Monday, March 21, 2022 9:08 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
>
> On Mon, 2022-03-21 at 12:42 +, Seymour J Metz wrote:
> > Sorry, I should have been less terse. I meant that PCRE provides a more 
> > sophisticated RE engine.
>
> PCRE is slightly more sophisticated but it's puny when compared to PEG 
> engines. Not only are PEG libraries more sophisticated they are orders of 
> magnitude easier to learn and use.
>
>
> > Off topic, but why does the documented URI pattern not recognize fragments 
> > prefixed by &qu

Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Bruce Hewson
Hello ITschak,


I recommend you take a look at FILE268 at   cbttape.org

File # 268 REXX function package to access VSAM files


It should be enough to guide you.

Regards
Bruce Hewson

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread David Crayford
On Mon, 2022-03-21 at 13:33 +, Seymour J Metz wrote:
> I just read the wiki artlice [[Parsing expression grammar]] and don't see 
> either the sophistication or the ease of use compared to regexen. I've come 
> to rely on named captures and backtracking, both
> of which seem to be missing.

Absolutely not. Depending on the library it's trivial to support named captures 
within named captures http://lua-users.org/lists/lua-l/2010-02/msg00493.html. 
Backtracking is equally trivial. PEGs
support recursive decent grammars. The problem with regular expressions is that 
they don't scale. For example, using PEGs it's simple to functionally decompose 
a tricky grammar such as validating a IP
address, which may be either a hostname, IPv4 or IPv6 [1]. Using a regex just 
to validate IPv6 is an intractable mess [2]. PEGs are super powerful which is 
why they are used to write the parsers for
programming language, including perl 6 (does anybody use perl 6?).

[1] 
https://github.com/mozilla-services/lua_sandbox_extensions/blob/main/lpeg/modules/lpeg/ip_address.lua
[2] https://ihateregex.io/expr/ipv6/
[3] https://metacpan.org/dist/Pegex/view/lib/Pegex.pod


> 
> 
> --
> 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: Monday, March 21, 2022 9:08 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
> 
> On Mon, 2022-03-21 at 12:42 +, Seymour J Metz wrote:
> > Sorry, I should have been less terse. I meant that PCRE provides a more 
> > sophisticated RE engine.
> 
> PCRE is slightly more sophisticated but it's puny when compared to PEG 
> engines. Not only are PEG libraries more sophisticated they are orders of 
> magnitude easier to learn and use.
> 
> 
> > Off topic, but why does the documented URI pattern not recognize fragments 
> > prefixed by "#"?
> > 
> > 
> > --
> > Shmuel (Seymour J.) Metz
> > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7C1c398fef77da48a8a3ff08da0b3c048f%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834649662173443%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=q%2BzKnJXNJ58TEHt3VL6fHCGFWMws2bqlDgnXLW29USg%3Dreserved=0
> > 
> > 
> > From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> > David Crayford [dcrayf...@gmail.com]
> > Sent: Monday, March 21, 2022 8:28 AM
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Subject: Re: looking for 'how to' developing Rexx host command
> > 
> > On Mon, 2022-03-21 at 12:01 +, Seymour J Metz wrote:
> > > PCRE?
> > 
> > No. It uses the C++ RTL ECMAScript Grammar which is 99% compatible with 
> > PCRE. AFAIK, the only thing it doesn't support is recursive subgroup 
> > matching which I could care less about. I lost interest
> > in
> > REXX long ago and regular expressions when I discovered PEGs
> > http://secure-web.cisco.com/1GzTyMMSxCF_dwz2M6Q46PXDtjQQPO9p6ZnEEaWyOCoB_OCkMHE0mJFg8_ivpVjXcHrXax7OQ0H_1OuTTj4qhcLRfQs7zDJNyLyG4NVFThKZbFfuIyALvQBo0O9xtivp3mfCFxg0XUteBTVqbC7DJJRGiYh8W-yiJjJP3EUpGBcbUS1xJiEstgA_yk97ZlzNUyFasjrTZYqnLYM9-8MQDL-SHo6VnBTY-3DTeVHncLZwmV-qKLCQjvAPRPR8i6ckJ16bUTA7bgxKOsFthBcfdtGpX8OHo8dH-psux7cnLT2547giX2VYLIv-rGiH2qSNOc3AGtygDbBvd8AcrLzf7GiGSTUiPtjI83vwkcCmHPo96dcT4YRSxRO5xEHTJxvKRBg-NAEEbzj1XMm0_hG6iNmaTQm7KhcyvsiKnJk7RoAeWzXdI3ccjohTu7R0o64c-/http%3A%2F%2Flua-users.org%2Fwiki%2FLpegRecipes
> > .
> > 
> > 
> > > --
> > > Shmuel (Seymour J.) Metz
> > > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7C1c398fef77da48a8a3ff08da0b3c048f%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834649662173443%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=q%2BzKnJXNJ58TEHt3VL6fHCGFWMws2bqlDgnXLW29USg%3Dreserved=0
> > > 
> > > ________
> > > From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf 
> > > of David Crayford [dcrayf...@gmail.com]
> > > Sent: Sunday, March 20, 2022 11:35 PM
> > > To: IBM-MAIN@LISTSERV.UA.EDU
> > > Subject: Re: looking for 'how to' developing Rexx host command
> > > 
> > > On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> > > > On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> > > > 
> > > > > TSO/E Rexx Reference Cha

Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Tony Harminc
On Mon, 21 Mar 2022 at 13:53, Paul Gilmartin
<000433f07816-dmarc-requ...@listserv.ua.edu> wrote:
>
> On Mon, 21 Mar 2022 13:31:44 -0400, Tony Harminc wrote:
> >...
> >A good many years ago I wrote a REXX interface to HLASM, which is a
> >fairly constrained environment. So you can invoke a REXX program
> >during assembly/macro processing, interact with REXX variables in your
> >macro, and so on. This is the kind of environment where you can't just
> >assume that e.g. TSO or ISPF or UNIX HCEs are available. I was able to
> >do it using only the REXX Reference book and the HLASM book.
> >
> I'm curious.  Did you do this using the HLASM I/O exits or other (specify)?

I used the SETCF statement.

I first implemented a simple "run REXX program/expression passed in
the SETCF args, and return its result in the SETC variable", then
added a scheme of co-routines between SETCF and a REXX program so both
can maintain context. This uses an MVS subtask, but both tasks don't
run at the same time. That might be an adventure!

There are also calls to set/get REXX variables explicitly, and a bunch
of other ideas roughed-in but not actually implemented. I started this
in 2002 and it's still a WIP, but I haven't actually touched it since,
um, 2006. If someone's interested I can probably make it available.
More a bunch of ideas than a ready-to-use tool. Only about 1500 lines.

> IRXEXCOM provides external access to Rexx variables.  Is there any
> similar access to HLASM SETC or EQUated symbols?  I suspect not
> -- macros are read too early.  Perhaps AINSERT/COPY to invoke Rexx
> at a useful time.  Or code evaluated symbols as arguments.

I haven't found anything in the way of a variable interface beyond
what SETCF provides. There is a note in the code about talking to John
Ehrman about it.

Tony H.

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
Have you submitted the interface to CBTTAPE.ORG?


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Tony Harminc [t...@harminc.net]
Sent: Monday, March 21, 2022 1:31 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Mon, 21 Mar 2022 at 10:54, Itschak Mugzach
<0305158ad67d-dmarc-requ...@listserv.ua.edu> wrote:
>
> Thanks all, I will try to simplify and better describe my needs. I have an
> application that stores data. I want to create an interface to this
> application using an address call. for example (just an example, my
> interest is on the myapp code):
> address myapp get key(44)
> address myapp put key(44) data('some data')
> address myapp loc Data('some data')

Ah - at last.

Pretty clearly for this you don't need a host command environment.
Your example doesn't show any interaction with the REXX variable pool,
or anything else that couldn't be done using an existing HCE such as
TSO. Even if you do want e.g. your "get key(44)" to set some REXX
variable, you can do that in an ordinary TSO command, i.e. the ability
to interact with some parts of REXX is independent of having your own
HCE.

But... If you have no useful environment to start with - perhaps you
are running REXX in a subtask of some long-running transaction program
or the like - then you can indeed write your own HCE that works as you
show. It's not very difficult, and is described adequately if not
brilliantly in the TSO/E Rexx Reference. (BTW, keep in mind that you
can issue
address myapp
just once, and it will be the default going forward. So you can then just have
myapp get key(44)
or whatever.)

A good many years ago I wrote a REXX interface to HLASM, which is a
fairly constrained environment. So you can invoke a REXX program
during assembly/macro processing, interact with REXX variables in your
macro, and so on. This is the kind of environment where you can't just
assume that e.g. TSO or ISPF or UNIX HCEs are available. I was able to
do it using only the REXX Reference book and the HLASM book.

Mention has been made of the need to use HLASM to interface with REXX.
I would argue that the IBM design is for PL/X rather than assembler.
It's pretty clear that the mapping macros are a really bad design for
assembler, and have PL/Xy approaches to things. But I may be wrong...

Tony H.

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
SYSPARM


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Paul Gilmartin [000433f07816-dmarc-requ...@listserv.ua.edu]
Sent: Monday, March 21, 2022 1:53 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Mon, 21 Mar 2022 13:31:44 -0400, Tony Harminc wrote:
>...
>A good many years ago I wrote a REXX interface to HLASM, which is a
>fairly constrained environment. So you can invoke a REXX program
>during assembly/macro processing, interact with REXX variables in your
>macro, and so on. This is the kind of environment where you can't just
>assume that e.g. TSO or ISPF or UNIX HCEs are available. I was able to
>do it using only the REXX Reference book and the HLASM book.
>
I'm curious.  Did you do this using the HLASM I/O exits or other (specify)?

IRXEXCOM provides external access to Rexx variables.  Is there any
similar access to HLASM SETC or EQUated symbols?  I suspect not
-- macros are read too early.  Perhaps AINSERT/COPY to invoke Rexx
at a useful time.  Or code evaluated symbols as arguments.

--
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread ITschak Mugzach
Tony and others,

A sample or direct link to manual page is required. assembler is not a
problem here, and many of the code I write dynamically define Rex variables
and store results there.

Please send a link to a starting point.

ITschak

בתאריך יום ב׳, 21 במרץ 2022 ב-19:53 מאת Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu>:

> On Mon, 21 Mar 2022 13:31:44 -0400, Tony Harminc wrote:
> >...
> >A good many years ago I wrote a REXX interface to HLASM, which is a
> >fairly constrained environment. So you can invoke a REXX program
> >during assembly/macro processing, interact with REXX variables in your
> >macro, and so on. This is the kind of environment where you can't just
> >assume that e.g. TSO or ISPF or UNIX HCEs are available. I was able to
> >do it using only the REXX Reference book and the HLASM book.
> >
> I'm curious.  Did you do this using the HLASM I/O exits or other (specify)?
>
> IRXEXCOM provides external access to Rexx variables.  Is there any
> similar access to HLASM SETC or EQUated symbols?  I suspect not
> -- macros are read too early.  Perhaps AINSERT/COPY to invoke Rexx
> at a useful time.  Or code evaluated symbols as arguments.
>
> --
> gil
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
-- 
ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Paul Gilmartin
On Mon, 21 Mar 2022 13:31:44 -0400, Tony Harminc wrote:
>...
>A good many years ago I wrote a REXX interface to HLASM, which is a
>fairly constrained environment. So you can invoke a REXX program
>during assembly/macro processing, interact with REXX variables in your
>macro, and so on. This is the kind of environment where you can't just
>assume that e.g. TSO or ISPF or UNIX HCEs are available. I was able to
>do it using only the REXX Reference book and the HLASM book.
> 
I'm curious.  Did you do this using the HLASM I/O exits or other (specify)?

IRXEXCOM provides external access to Rexx variables.  Is there any
similar access to HLASM SETC or EQUated symbols?  I suspect not
-- macros are read too early.  Perhaps AINSERT/COPY to invoke Rexx
at a useful time.  Or code evaluated symbols as arguments.

-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Tony Harminc
On Mon, 21 Mar 2022 at 10:54, Itschak Mugzach
<0305158ad67d-dmarc-requ...@listserv.ua.edu> wrote:
>
> Thanks all, I will try to simplify and better describe my needs. I have an
> application that stores data. I want to create an interface to this
> application using an address call. for example (just an example, my
> interest is on the myapp code):
> address myapp get key(44)
> address myapp put key(44) data('some data')
> address myapp loc Data('some data')

Ah - at last.

Pretty clearly for this you don't need a host command environment.
Your example doesn't show any interaction with the REXX variable pool,
or anything else that couldn't be done using an existing HCE such as
TSO. Even if you do want e.g. your "get key(44)" to set some REXX
variable, you can do that in an ordinary TSO command, i.e. the ability
to interact with some parts of REXX is independent of having your own
HCE.

But... If you have no useful environment to start with - perhaps you
are running REXX in a subtask of some long-running transaction program
or the like - then you can indeed write your own HCE that works as you
show. It's not very difficult, and is described adequately if not
brilliantly in the TSO/E Rexx Reference. (BTW, keep in mind that you
can issue
address myapp
just once, and it will be the default going forward. So you can then just have
myapp get key(44)
or whatever.)

A good many years ago I wrote a REXX interface to HLASM, which is a
fairly constrained environment. So you can invoke a REXX program
during assembly/macro processing, interact with REXX variables in your
macro, and so on. This is the kind of environment where you can't just
assume that e.g. TSO or ISPF or UNIX HCEs are available. I was able to
do it using only the REXX Reference book and the HLASM book.

Mention has been made of the need to use HLASM to interface with REXX.
I would argue that the IBM design is for PL/X rather than assembler.
It's pretty clear that the mapping macros are a really bad design for
assembler, and have PL/Xy approaches to things. But I may be wrong...

Tony H.

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
You need to quote those parentheses unless you want function calls:

address myapp 'get key(44)'
address myapp put "key(44) data('some data')"
address myapp loc "Data('some data')"

BTW, have you looked into function packages? Depending on what you want to do, 
that may be a good option. BTDT,GTTS

Caveat: I've only used ASM H V2 and HLASM for function packages, never, e.g., 
C, PL/I.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Itschak Mugzach [0305158ad67d-dmarc-requ...@listserv.ua.edu]
Sent: Monday, March 21, 2022 10:53 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

Thanks all, I will try to simplify and better describe my needs. I have an
application that stores data. I want to create an interface to this
application using an address call. for example (just an example, my
interest is on the myapp code):
address myapp get key(44)
address myapp put key(44) data('some data')
address myapp loc Data('some data')

*| **Itschak Mugzach | Director | SecuriTeam Software **|** IronSphere
Platform* *|* *Information Security Continuous Monitoring for Z/OS, zLinux
and IBM I **|  *

*|* *Email**: i_mugz...@securiteam.co.il **|* *Mob**: +972 522 986404 **|*
*Skype**: ItschakMugzach **|* *Web**: 
http://secure-web.cisco.com/1zN5pM31VRaeoD1Xq8_5wqiT5nLvOq5qW1RqsUQ8ftwyjy3u_a19zG02B7i8FpziWpz-wMS9_iT9Ts9_T99MsTprkRJis_HdlOkwUZH9o2GX2Y6F6wUDHlMkPGPAl8SI6tk1ujUlxlma3-NqBKLmSTRFTVejHbwX9Eb3rzhvFCCyipfY3pFtnqnIdW1V2e1-P7tzG5vJbKo989deMzHJIXXiAmiWUMbQp3Hbg5VI6AmGh4RNEjS3Rakc0Og7Pe8gim2gxkR6NuBKVhstgPnvYT0aS6dp3pU5IW18r5LXg3nq5Jy7_7yHTpkxMTkZlWIF06GExir90-wMSUChMayCSCoEuqqZ4c_ULY8FaJzhWZVFu3ATGx9zTzL19jv35mgbl0bBAAAOY5xehj71BDYOzLlPtkQOpa1Xk3nlk7vUpQh_BCrQd4XU0KdESiTdReJC_/http%3A%2F%2Fwww.Securiteam.co.il
  **|*





On Mon, Mar 21, 2022 at 4:30 PM Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu> wrote:

> On Mon, 21 Mar 2022 09:55:52 -0400, Bob Bridges wrote:
>
> >Itschak, I've read some of the replies to this post and I don't yet
> understand the question.  What do you mean by "host load"?  And/or what are
> "address xxx" services?  The latter sounds to me like the STORAGE function,
> but I'm sure you're not asking about that.
> >
> RTFM: 
> <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ibm.com%2Fdocs%2Fen%2Fzos%2F2.5.0%3Ftopic%3Dinstructions-addressdata=04%7C01%7Csmetz3%40gmu.edu%7C44a1482e96ce497c695908da0b4ab924%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834712809360070%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=zvCtRXy4fH9CXFaYL1lBlDvpvDkdZc511n7QD4CU%2FKo%3Dreserved=0>.
>
> >-Original Message-
> >From: I ITschak Mugzach
> >Sent: Sunday, March 20, 2022 10:36
> >
> >I scanned the tso rexx manuals and haven't found any instructions on how
> to develop the host load module. I mean, the one who supplies the address
> xxx services. Any idea where to find a sample or instruction manual?
>
> -- gil
>
> --
> 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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
It's a different interface. He could also provide procedures in a function 
package, which is yet more different.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Paul Gilmartin [000433f07816-dmarc-requ...@listserv.ua.edu]
Sent: Monday, March 21, 2022 11:19 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Mon, 21 Mar 2022 16:53:33 +0200, Itschak Mugzach  wrote:

>Thanks all, I will try to simplify and better describe my needs. I have an
>application that stores data. I want to create an interface to this
>application using an address call. for example (just an example, my
>interest is on the myapp code):
>address myapp get key(44)
>address myapp put key(44) data('some data')
>address myapp loc Data('some data')
>
Is this something that might equally well be done with, e.g.:
myparm = "loc Data('some data')"
address LINIKMVS 'myapp myparm'
...
and accessing Rexx variables with IRXEXCOM:
<https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ibm.com%2Fdocs%2Fen%2Fzos%2F2.5.0%3Ftopic%3Dservices-variable-access-routine-irxexcomdata=04%7C01%7Csmetz3%40gmu.edu%7C0e3970c3808840f4687508da0b4e3664%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834727827539181%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=bbFA%2BgU%2BCziaottJZjQ9O5kJEoLtd4pbxJZpGPHrPhc%3Dreserved=0>?

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Paul Gilmartin
On Mon, 21 Mar 2022 17:32:30 +0200, ITschak Mugzach wrote:

>This is how I do it today. I want to experience the development of the host
>command processor.
>
Ah!  OJT!  That's admirable.  BTW,  note that we've both been casual below
with respect to the Use vs. Mention or Variable vs. Literal distinction.

>בתאריך יום ב׳, 21 במרץ 2022 ב-17:19 מאת Paul Gilmartin:
>
>> On Mon, 21 Mar 2022 16:53:33 +0200, Itschak Mugzach  wrote:
>>
>> >Thanks all, I will try to simplify and better describe my needs. I have an
>> >application that stores data. I want to create an interface to this
>> >application using an address call. for example (just an example, my
>> >interest is on the myapp code):
>> >address myapp get key(44)
>> >address myapp put key(44) data('some data')
>> >address myapp loc Data('some data')
>> >
>> Is this something that might equally well be done with, e.g.:
>> myparm = "loc Data('some data')"
>> address LINIKMVS 'myapp myparm'
>> ...
>> and accessing Rexx variables with IRXEXCOM:

-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread ITschak Mugzach
This is how I do it today. I want to experience the development of the host
command processor.

בתאריך יום ב׳, 21 במרץ 2022 ב-17:19 מאת Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu>:

> On Mon, 21 Mar 2022 16:53:33 +0200, Itschak Mugzach  wrote:
>
> >Thanks all, I will try to simplify and better describe my needs. I have an
> >application that stores data. I want to create an interface to this
> >application using an address call. for example (just an example, my
> >interest is on the myapp code):
> >address myapp get key(44)
> >address myapp put key(44) data('some data')
> >address myapp loc Data('some data')
> >
> Is this something that might equally well be done with, e.g.:
> myparm = "loc Data('some data')"
> address LINIKMVS 'myapp myparm'
> ...
> and accessing Rexx variables with IRXEXCOM:
> <
> https://www.ibm.com/docs/en/zos/2.5.0?topic=services-variable-access-routine-irxexcom
> >?
>
>
> >On Mon, Mar 21, 2022 at 4:30 PM Paul Gilmartin wrote:
> >> On Mon, 21 Mar 2022 09:55:52 -0400, Bob Bridges wrote:
> >>
> >> >Itschak, I've read some of the replies to this post and I don't yet
> >> understand the question.  What do you mean by "host load"?  And/or what
> are
> >> "address xxx" services?  The latter sounds to me like the STORAGE
> function,
> >> but I'm sure you're not asking about that.
> >> >
> >> RTFM:  >.
>
> --
> gil
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
-- 
ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Paul Gilmartin
On Mon, 21 Mar 2022 16:53:33 +0200, Itschak Mugzach  wrote:

>Thanks all, I will try to simplify and better describe my needs. I have an
>application that stores data. I want to create an interface to this
>application using an address call. for example (just an example, my
>interest is on the myapp code):
>address myapp get key(44)
>address myapp put key(44) data('some data')
>address myapp loc Data('some data')
> 
Is this something that might equally well be done with, e.g.:
myparm = "loc Data('some data')"
address LINIKMVS 'myapp myparm'
... 
and accessing Rexx variables with IRXEXCOM:
?
  

>On Mon, Mar 21, 2022 at 4:30 PM Paul Gilmartin wrote:
>> On Mon, 21 Mar 2022 09:55:52 -0400, Bob Bridges wrote:
>>
>> >Itschak, I've read some of the replies to this post and I don't yet
>> understand the question.  What do you mean by "host load"?  And/or what are
>> "address xxx" services?  The latter sounds to me like the STORAGE function,
>> but I'm sure you're not asking about that.
>> >
>> RTFM: .

-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Itschak Mugzach
Thanks all, I will try to simplify and better describe my needs. I have an
application that stores data. I want to create an interface to this
application using an address call. for example (just an example, my
interest is on the myapp code):
address myapp get key(44)
address myapp put key(44) data('some data')
address myapp loc Data('some data')

*| **Itschak Mugzach | Director | SecuriTeam Software **|** IronSphere
Platform* *|* *Information Security Continuous Monitoring for Z/OS, zLinux
and IBM I **|  *

*|* *Email**: i_mugz...@securiteam.co.il **|* *Mob**: +972 522 986404 **|*
*Skype**: ItschakMugzach **|* *Web**: www.Securiteam.co.il  **|*





On Mon, Mar 21, 2022 at 4:30 PM Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu> wrote:

> On Mon, 21 Mar 2022 09:55:52 -0400, Bob Bridges wrote:
>
> >Itschak, I've read some of the replies to this post and I don't yet
> understand the question.  What do you mean by "host load"?  And/or what are
> "address xxx" services?  The latter sounds to me like the STORAGE function,
> but I'm sure you're not asking about that.
> >
> RTFM: .
>
> >-Original Message-
> >From: I ITschak Mugzach
> >Sent: Sunday, March 20, 2022 10:36
> >
> >I scanned the tso rexx manuals and haven't found any instructions on how
> to develop the host load module. I mean, the one who supplies the address
> xxx services. Any idea where to find a sample or instruction manual?
>
> -- gil
>
> --
> 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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Paul Gilmartin
On Mon, 21 Mar 2022 09:55:52 -0400, Bob Bridges wrote:

>Itschak, I've read some of the replies to this post and I don't yet understand 
>the question.  What do you mean by "host load"?  And/or what are "address xxx" 
>services?  The latter sounds to me like the STORAGE function, but I'm sure 
>you're not asking about that.
>
RTFM: .

>-Original Message-
>From: I ITschak Mugzach
>Sent: Sunday, March 20, 2022 10:36
>
>I scanned the tso rexx manuals and haven't found any instructions on how to 
>develop the host load module. I mean, the one who supplies the address xxx 
>services. Any idea where to find a sample or instruction manual?

-- gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
There is a REXX keyword statement called address. The first operand in that 
statement is the name of a REXX evironment. that will process the value of any 
bare expression, e.g.,

 address isredit
 'del .f .l'

processes the value of 'del .f .l in the ISPF EDIT environment.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Bob 
Bridges [robhbrid...@gmail.com]
Sent: Monday, March 21, 2022 9:55 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

Itschak, I've read some of the replies to this post and I don't yet understand 
the question.  What do you mean by "host load"?  And/or what are "address xxx" 
services?  The latter sounds to me like the STORAGE function, but I'm sure 
you're not asking about that.

---
Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313

/* Little girls, like butterflies, need no excuse.  -from the Notebooks of 
Lazarus Long */

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
ITschak Mugzach
Sent: Sunday, March 20, 2022 10:36

I scanned the tso rexx manuals and haven't found any instructions on how to 
develop the host load module. I mean, the one who supplies the address xxx 
services. Any idea where to find a sample or instruction manual?

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Bob Bridges
Itschak, I've read some of the replies to this post and I don't yet understand 
the question.  What do you mean by "host load"?  And/or what are "address xxx" 
services?  The latter sounds to me like the STORAGE function, but I'm sure 
you're not asking about that.

---
Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313

/* Little girls, like butterflies, need no excuse.  -from the Notebooks of 
Lazarus Long */

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
ITschak Mugzach
Sent: Sunday, March 20, 2022 10:36

I scanned the tso rexx manuals and haven't found any instructions on how to 
develop the host load module. I mean, the one who supplies the address xxx 
services. Any idea where to find a sample or instruction manual?

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Mohammad Khan
Not just alive ... it's mutating. I have a coworker who is named ComeTron!
mkk

On Mon, 21 Mar 2022 11:52:10 +, PINION, RICHARD W. 
 wrote:

>So Tron is alive!


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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
I just read the wiki artlice [[Parsing expression grammar]] and don't see 
either the sophistication or the ease of use compared to regexen. I've come to 
rely on named captures and backtracking, both of which seem to be missing.


--
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: Monday, March 21, 2022 9:08 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Mon, 2022-03-21 at 12:42 +, Seymour J Metz wrote:
> Sorry, I should have been less terse. I meant that PCRE provides a more 
> sophisticated RE engine.

PCRE is slightly more sophisticated but it's puny when compared to PEG engines. 
Not only are PEG libraries more sophisticated they are orders of magnitude 
easier to learn and use.


>
> Off topic, but why does the documented URI pattern not recognize fragments 
> prefixed by "#"?
>
>
> --
> Shmuel (Seymour J.) Metz
> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7C1c398fef77da48a8a3ff08da0b3c048f%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834649662173443%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=q%2BzKnJXNJ58TEHt3VL6fHCGFWMws2bqlDgnXLW29USg%3Dreserved=0
>
> 
> From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> David Crayford [dcrayf...@gmail.com]
> Sent: Monday, March 21, 2022 8:28 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
>
> On Mon, 2022-03-21 at 12:01 +, Seymour J Metz wrote:
> > PCRE?
>
> No. It uses the C++ RTL ECMAScript Grammar which is 99% compatible with PCRE. 
> AFAIK, the only thing it doesn't support is recursive subgroup matching which 
> I could care less about. I lost interest
> in
> REXX long ago and regular expressions when I discovered PEGs
> http://secure-web.cisco.com/1GzTyMMSxCF_dwz2M6Q46PXDtjQQPO9p6ZnEEaWyOCoB_OCkMHE0mJFg8_ivpVjXcHrXax7OQ0H_1OuTTj4qhcLRfQs7zDJNyLyG4NVFThKZbFfuIyALvQBo0O9xtivp3mfCFxg0XUteBTVqbC7DJJRGiYh8W-yiJjJP3EUpGBcbUS1xJiEstgA_yk97ZlzNUyFasjrTZYqnLYM9-8MQDL-SHo6VnBTY-3DTeVHncLZwmV-qKLCQjvAPRPR8i6ckJ16bUTA7bgxKOsFthBcfdtGpX8OHo8dH-psux7cnLT2547giX2VYLIv-rGiH2qSNOc3AGtygDbBvd8AcrLzf7GiGSTUiPtjI83vwkcCmHPo96dcT4YRSxRO5xEHTJxvKRBg-NAEEbzj1XMm0_hG6iNmaTQm7KhcyvsiKnJk7RoAeWzXdI3ccjohTu7R0o64c-/http%3A%2F%2Flua-users.org%2Fwiki%2FLpegRecipes
> .
>
>
> >
> > --
> > Shmuel (Seymour J.) Metz
> > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7C1c398fef77da48a8a3ff08da0b3c048f%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834649662173443%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=q%2BzKnJXNJ58TEHt3VL6fHCGFWMws2bqlDgnXLW29USg%3Dreserved=0
> >
> > 
> > From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> > David Crayford [dcrayf...@gmail.com]
> > Sent: Sunday, March 20, 2022 11:35 PM
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Subject: Re: looking for 'how to' developing Rexx host command
> >
> > On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> > > On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> > >
> > > > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> > > >
> > > Wouldn't a SAMPLIB member be nice?  In a HLL?
> >
> > Writing a REXX command processor in a HLL is non-trivial to do correctly. 
> > I've done it a few times and it requires creating a persistent LE 
> > environment and hanging the pointer on the user area
> > inthe
> > environment block. Like most things on z/OS, REXX programming services were 
> > designed for HLASM. Unfortunately, for the kind of APIs I'm interested in 
> > HLASM is practically useless. For example,
> > regular
> > expressions
> > https://secure-web.cisco.com/1zcwmhQDfP3w43bgtLLTfqgfquwmvKtHyKxkeXoo2pwlKZnmHKubm9IgbehcXUMaSRUvaEdPtbH79-0CZ30CeuslyETSCoPogZKiHdS9lnPt0OXlOV2A1sZGJH1j2ZlRptWqebMlsvE26C_jDXTFaXgQwwpSR4PfcyY2a3fHtEEFPy8N1_EUhKhgNJ4qKrOEzp6jQE_jSCNpvkXsh0td0Atyfzpzn85YvAjgTe-uL_bIgjp-HQoFpsdnKO_USxUiVxvRukM8wHuQLKtjVhDMgqvI3acfBOPJV1xYg3rATQBgwkriE0Ey8C3BtYm8aXHNI2qhJdDLtiR3QZHo90qFKkTga0SshiTOaC9Cn20kfOeXkBwCF8mmt0enaJQnalSmeZbQOZClq3sRCF9rgGZTkAaC-NMWPVp8tZ9C3LobJmxH2MvzLHyNlELnLUQl2PsN_/https%3A%2F%2Fgithub.com%2Fdaveyc%2FRTK
> > .
> >
> > It's far easier to just use a more contemporary programming langu

Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread David Crayford
On Mon, 2022-03-21 at 12:42 +, Seymour J Metz wrote:
> Sorry, I should have been less terse. I meant that PCRE provides a more 
> sophisticated RE engine.

PCRE is slightly more sophisticated but it's puny when compared to PEG engines. 
Not only are PEG libraries more sophisticated they are orders of magnitude 
easier to learn and use. 


> 
> Off topic, but why does the documented URI pattern not recognize fragments 
> prefixed by "#"?
> 
> 
> --
> 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: Monday, March 21, 2022 8:28 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
> 
> On Mon, 2022-03-21 at 12:01 +, Seymour J Metz wrote:
> > PCRE?
> 
> No. It uses the C++ RTL ECMAScript Grammar which is 99% compatible with PCRE. 
> AFAIK, the only thing it doesn't support is recursive subgroup matching which 
> I could care less about. I lost interest
> in
> REXX long ago and regular expressions when I discovered PEGs 
> http://secure-web.cisco.com/1GzTyMMSxCF_dwz2M6Q46PXDtjQQPO9p6ZnEEaWyOCoB_OCkMHE0mJFg8_ivpVjXcHrXax7OQ0H_1OuTTj4qhcLRfQs7zDJNyLyG4NVFThKZbFfuIyALvQBo0O9xtivp3mfCFxg0XUteBTVqbC7DJJRGiYh8W-yiJjJP3EUpGBcbUS1xJiEstgA_yk97ZlzNUyFasjrTZYqnLYM9-8MQDL-SHo6VnBTY-3DTeVHncLZwmV-qKLCQjvAPRPR8i6ckJ16bUTA7bgxKOsFthBcfdtGpX8OHo8dH-psux7cnLT2547giX2VYLIv-rGiH2qSNOc3AGtygDbBvd8AcrLzf7GiGSTUiPtjI83vwkcCmHPo96dcT4YRSxRO5xEHTJxvKRBg-NAEEbzj1XMm0_hG6iNmaTQm7KhcyvsiKnJk7RoAeWzXdI3ccjohTu7R0o64c-/http%3A%2F%2Flua-users.org%2Fwiki%2FLpegRecipes
> .
> 
> 
> > 
> > --
> > Shmuel (Seymour J.) Metz
> > https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7Cb3572b0a87ff497a8be708da0b366763%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834625577750540%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=fU8%2FRDc%2FrH5nsoap0zyx6r%2F6ds1cUONMn0PGVyFmaTE%3Dreserved=0
> > 
> > 
> > From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> > David Crayford [dcrayf...@gmail.com]
> > Sent: Sunday, March 20, 2022 11:35 PM
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Subject: Re: looking for 'how to' developing Rexx host command
> > 
> > On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> > > On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> > > 
> > > > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> > > > 
> > > Wouldn't a SAMPLIB member be nice?  In a HLL?
> > 
> > Writing a REXX command processor in a HLL is non-trivial to do correctly. 
> > I've done it a few times and it requires creating a persistent LE 
> > environment and hanging the pointer on the user area
> > inthe
> > environment block. Like most things on z/OS, REXX programming services were 
> > designed for HLASM. Unfortunately, for the kind of APIs I'm interested in 
> > HLASM is practically useless. For example,
> > regular
> > expressions
> > https://secure-web.cisco.com/1zcwmhQDfP3w43bgtLLTfqgfquwmvKtHyKxkeXoo2pwlKZnmHKubm9IgbehcXUMaSRUvaEdPtbH79-0CZ30CeuslyETSCoPogZKiHdS9lnPt0OXlOV2A1sZGJH1j2ZlRptWqebMlsvE26C_jDXTFaXgQwwpSR4PfcyY2a3fHtEEFPy8N1_EUhKhgNJ4qKrOEzp6jQE_jSCNpvkXsh0td0Atyfzpzn85YvAjgTe-uL_bIgjp-HQoFpsdnKO_USxUiVxvRukM8wHuQLKtjVhDMgqvI3acfBOPJV1xYg3rATQBgwkriE0Ey8C3BtYm8aXHNI2qhJdDLtiR3QZHo90qFKkTga0SshiTOaC9Cn20kfOeXkBwCF8mmt0enaJQnalSmeZbQOZClq3sRCF9rgGZTkAaC-NMWPVp8tZ9C3LobJmxH2MvzLHyNlELnLUQl2PsN_/https%3A%2F%2Fgithub.com%2Fdaveyc%2FRTK
> > .
> > 
> > It's far easier to just use a more contemporary programming language which 
> > has a modern API for writing packages. Although, then you need to know 
> > C/C++ for Python, Lua, Ruby, Node etc.
> > 
> > 
> > 
> > > > -Original Message-
> > > > From: ITschak Mugzach
> > > > Sent: Sunday, March 20, 2022 7:36 AM
> > > > 
> > > > I scanned the tso rexx manuals and haven't found any instructions on 
> > > > how to
> > > > develop the host load module. I mean, the one who supplies the address 
> > > > xxx
> > > > services. Any idea where to find a sample or instruction manual?
> > 
> > --
> > For IBM-MAIN subscribe / signoff / archive access instructions,
> > send email to lists...@listser

Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
Sorry, I should have been less terse. I meant that PCRE provides a more 
sophisticated RE engine.

Off topic, but why does the documented URI pattern not recognize fragments 
prefixed by "#"?


--
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: Monday, March 21, 2022 8:28 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Mon, 2022-03-21 at 12:01 +, Seymour J Metz wrote:
> PCRE?

No. It uses the C++ RTL ECMAScript Grammar which is 99% compatible with PCRE. 
AFAIK, the only thing it doesn't support is recursive subgroup matching which I 
could care less about. I lost interest in
REXX long ago and regular expressions when I discovered PEGs 
http://secure-web.cisco.com/1GzTyMMSxCF_dwz2M6Q46PXDtjQQPO9p6ZnEEaWyOCoB_OCkMHE0mJFg8_ivpVjXcHrXax7OQ0H_1OuTTj4qhcLRfQs7zDJNyLyG4NVFThKZbFfuIyALvQBo0O9xtivp3mfCFxg0XUteBTVqbC7DJJRGiYh8W-yiJjJP3EUpGBcbUS1xJiEstgA_yk97ZlzNUyFasjrTZYqnLYM9-8MQDL-SHo6VnBTY-3DTeVHncLZwmV-qKLCQjvAPRPR8i6ckJ16bUTA7bgxKOsFthBcfdtGpX8OHo8dH-psux7cnLT2547giX2VYLIv-rGiH2qSNOc3AGtygDbBvd8AcrLzf7GiGSTUiPtjI83vwkcCmHPo96dcT4YRSxRO5xEHTJxvKRBg-NAEEbzj1XMm0_hG6iNmaTQm7KhcyvsiKnJk7RoAeWzXdI3ccjohTu7R0o64c-/http%3A%2F%2Flua-users.org%2Fwiki%2FLpegRecipes.


>
>
> --
> Shmuel (Seymour J.) Metz
> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmason.gmu.edu%2F~smetz3data=04%7C01%7Csmetz3%40gmu.edu%7Cb3572b0a87ff497a8be708da0b366763%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637834625577750540%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000sdata=fU8%2FRDc%2FrH5nsoap0zyx6r%2F6ds1cUONMn0PGVyFmaTE%3Dreserved=0
>
> 
> From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> David Crayford [dcrayf...@gmail.com]
> Sent: Sunday, March 20, 2022 11:35 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
>
> On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> > On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> >
> > > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> > >
> > Wouldn't a SAMPLIB member be nice?  In a HLL?
>
> Writing a REXX command processor in a HLL is non-trivial to do correctly. 
> I've done it a few times and it requires creating a persistent LE environment 
> and hanging the pointer on the user area inthe
> environment block. Like most things on z/OS, REXX programming services were 
> designed for HLASM. Unfortunately, for the kind of APIs I'm interested in 
> HLASM is practically useless. For example,
> regular
> expressions
> https://secure-web.cisco.com/1zcwmhQDfP3w43bgtLLTfqgfquwmvKtHyKxkeXoo2pwlKZnmHKubm9IgbehcXUMaSRUvaEdPtbH79-0CZ30CeuslyETSCoPogZKiHdS9lnPt0OXlOV2A1sZGJH1j2ZlRptWqebMlsvE26C_jDXTFaXgQwwpSR4PfcyY2a3fHtEEFPy8N1_EUhKhgNJ4qKrOEzp6jQE_jSCNpvkXsh0td0Atyfzpzn85YvAjgTe-uL_bIgjp-HQoFpsdnKO_USxUiVxvRukM8wHuQLKtjVhDMgqvI3acfBOPJV1xYg3rATQBgwkriE0Ey8C3BtYm8aXHNI2qhJdDLtiR3QZHo90qFKkTga0SshiTOaC9Cn20kfOeXkBwCF8mmt0enaJQnalSmeZbQOZClq3sRCF9rgGZTkAaC-NMWPVp8tZ9C3LobJmxH2MvzLHyNlELnLUQl2PsN_/https%3A%2F%2Fgithub.com%2Fdaveyc%2FRTK
> .
>
> It's far easier to just use a more contemporary programming language which 
> has a modern API for writing packages. Although, then you need to know C/C++ 
> for Python, Lua, Ruby, Node etc.
>
>
>
> > > -Original Message-
> > > From: ITschak Mugzach
> > > Sent: Sunday, March 20, 2022 7:36 AM
> > >
> > > I scanned the tso rexx manuals and haven't found any instructions on how 
> > > to
> > > develop the host load module. I mean, the one who supplies the address xxx
> > > services. Any idea where to find a sample or instruction manual?
>
> --
> 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

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread David Crayford
On Mon, 2022-03-21 at 12:01 +, Seymour J Metz wrote:
> PCRE?

No. It uses the C++ RTL ECMAScript Grammar which is 99% compatible with PCRE. 
AFAIK, the only thing it doesn't support is recursive subgroup matching which I 
could care less about. I lost interest in
REXX long ago and regular expressions when I discovered PEGs 
http://lua-users.org/wiki/LpegRecipes.


> 
> 
> --
> 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: Sunday, March 20, 2022 11:35 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: looking for 'how to' developing Rexx host command
> 
> On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> > On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> > 
> > > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> > > 
> > Wouldn't a SAMPLIB member be nice?  In a HLL?
> 
> Writing a REXX command processor in a HLL is non-trivial to do correctly. 
> I've done it a few times and it requires creating a persistent LE environment 
> and hanging the pointer on the user area inthe
> environment block. Like most things on z/OS, REXX programming services were 
> designed for HLASM. Unfortunately, for the kind of APIs I'm interested in 
> HLASM is practically useless. For example,
> regular
> expressions 
> https://secure-web.cisco.com/1zcwmhQDfP3w43bgtLLTfqgfquwmvKtHyKxkeXoo2pwlKZnmHKubm9IgbehcXUMaSRUvaEdPtbH79-0CZ30CeuslyETSCoPogZKiHdS9lnPt0OXlOV2A1sZGJH1j2ZlRptWqebMlsvE26C_jDXTFaXgQwwpSR4PfcyY2a3fHtEEFPy8N1_EUhKhgNJ4qKrOEzp6jQE_jSCNpvkXsh0td0Atyfzpzn85YvAjgTe-uL_bIgjp-HQoFpsdnKO_USxUiVxvRukM8wHuQLKtjVhDMgqvI3acfBOPJV1xYg3rATQBgwkriE0Ey8C3BtYm8aXHNI2qhJdDLtiR3QZHo90qFKkTga0SshiTOaC9Cn20kfOeXkBwCF8mmt0enaJQnalSmeZbQOZClq3sRCF9rgGZTkAaC-NMWPVp8tZ9C3LobJmxH2MvzLHyNlELnLUQl2PsN_/https%3A%2F%2Fgithub.com%2Fdaveyc%2FRTK
> .
> 
> It's far easier to just use a more contemporary programming language which 
> has a modern API for writing packages. Although, then you need to know C/C++ 
> for Python, Lua, Ruby, Node etc.
> 
> 
> 
> > > -Original Message-
> > > From: ITschak Mugzach
> > > Sent: Sunday, March 20, 2022 7:36 AM
> > > 
> > > I scanned the tso rexx manuals and haven't found any instructions on how 
> > > to
> > > develop the host load module. I mean, the one who supplies the address xxx
> > > services. Any idea where to find a sample or instruction manual?
> 
> --
> 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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
What the OP needs is a PL/I routine that creates some control blocks and calls 
REXX, and a second routine that is called by REXX and has access to the control 
blocks created by the first. I don't kno whther the OP requires that the two 
routines be running in the same LE context.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Dave Jones [d...@vsoft-software.com]
Sent: Sunday, March 20, 2022 7:13 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

>From my notes:
Re: Calling PL/I from Rexx

Yes, that should work.

I would add NOEXECOPS to the main's options, to avoid the need for the
leading '/', as the '/' tends to get forgotten.

My personal preference is to specify:
*PROCESS SYSTEM (TSO);
PLIMOD: PROC (CPPLPTR)
OPTIONS (MAIN REENTRANT) REORDER;

DCL CPPLPTR PTR,
1 CPPL BASED (CPPLPTR),
3 CPPLCBUF PTR, /* MAPPED BY CBUF BELOW */
3 CPPLUPT PTR, /* MAPPING: SEE SYS1.MACLIB(IKJUPT) */
3 CPPLPSCB PTR, /* MAPPING: SEE SYS1.MACLIB(IKJPSCB) */
3 CPPLECT PTR; /* MAPPING: SEE SYS1.MACLIB(IKECPT) */

DCL 1 CBUF BASED (CPPL.CPPLCBUF),
3 CBUFLEN FIXED BIN (15),
3 CBUFOFFS FIXED BIN (15),
3 CBUFCMD CHAR (32767); /* ACTUAL LENGTH IS CBUFLEN - 4 */

DCL PARM CHAR (CBUF.CBUFLEN - CBUF.CBUFOFFS - 4) VAR
INIT ((SUBSTR (CBUF.CBUFCMD, CBUF.CBUFOFFS + 1,
CBUF.CBUFLEN - CBUF.CBUFOFFS - 4)));

so as to be able to write a TSO command processor.

In the above code, I've also included the declaration for PARM that will
give you the same effect as on your example, but without the 100 character
limit.

Good luck.
DJ

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
PCRE?


--
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: Sunday, March 20, 2022 11:35 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
>
> > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> >
> Wouldn't a SAMPLIB member be nice?  In a HLL?

Writing a REXX command processor in a HLL is non-trivial to do correctly. I've 
done it a few times and it requires creating a persistent LE environment and 
hanging the pointer on the user area inthe
environment block. Like most things on z/OS, REXX programming services were 
designed for HLASM. Unfortunately, for the kind of APIs I'm interested in HLASM 
is practically useless. For example, regular
expressions 
https://secure-web.cisco.com/1zcwmhQDfP3w43bgtLLTfqgfquwmvKtHyKxkeXoo2pwlKZnmHKubm9IgbehcXUMaSRUvaEdPtbH79-0CZ30CeuslyETSCoPogZKiHdS9lnPt0OXlOV2A1sZGJH1j2ZlRptWqebMlsvE26C_jDXTFaXgQwwpSR4PfcyY2a3fHtEEFPy8N1_EUhKhgNJ4qKrOEzp6jQE_jSCNpvkXsh0td0Atyfzpzn85YvAjgTe-uL_bIgjp-HQoFpsdnKO_USxUiVxvRukM8wHuQLKtjVhDMgqvI3acfBOPJV1xYg3rATQBgwkriE0Ey8C3BtYm8aXHNI2qhJdDLtiR3QZHo90qFKkTga0SshiTOaC9Cn20kfOeXkBwCF8mmt0enaJQnalSmeZbQOZClq3sRCF9rgGZTkAaC-NMWPVp8tZ9C3LobJmxH2MvzLHyNlELnLUQl2PsN_/https%3A%2F%2Fgithub.com%2Fdaveyc%2FRTK.

It's far easier to just use a more contemporary programming language which has 
a modern API for writing packages. Although, then you need to know C/C++ for 
Python, Lua, Ruby, Node etc.



>
> > -Original Message-
> > From: ITschak Mugzach
> > Sent: Sunday, March 20, 2022 7:36 AM
> >
> > I scanned the tso rexx manuals and haven't found any instructions on how to
> > develop the host load module. I mean, the one who supplies the address xxx
> > services. Any idea where to find a sample or instruction manual?

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread PINION, RICHARD W.
So Tron is alive!

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of Jay 
Maynard
Sent: Sunday, March 20, 2022 11:37 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

[External Email. Exercise caution when clicking links or opening attachments.]

Perhaps an HLASM shim to a C routine?

On Sun, Mar 20, 2022, 22:36 David Crayford  wrote:

> On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> > On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> >
> > > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> > >
> > Wouldn't a SAMPLIB member be nice?  In a HLL?
>
> Writing a REXX command processor in a HLL is non-trivial to do correctly.
> I've done it a few times and it requires creating a persistent LE 
> environment and hanging the pointer on the user area inthe environment 
> block. Like most things on z/OS, REXX programming services were 
> designed for HLASM. Unfortunately, for the kind of APIs I'm interested 
> in HLASM is practically useless. For example, regular expressions 
> https://urldefense.com/v3/__https://github.com/daveyc/RTK__;!!HnnddUIWDII9UQ!Ck71kGZcd2uuVIc4OhtSDOYwjp6ORLN64m5QMO9s7bGtPSofieSguXi5fzruEOPiThs$
>  .
>
> It's far easier to just use a more contemporary programming language 
> which has a modern API for writing packages. Although, then you need 
> to know C/C++ for Python, Lua, Ruby, Node etc.
>
>
>
> >
> > > -Original Message-
> > > From: ITschak Mugzach
> > > Sent: Sunday, March 20, 2022 7:36 AM
> > >
> > > I scanned the tso rexx manuals and haven't found any instructions 
> > > on
> how to
> > > develop the host load module. I mean, the one who supplies the 
> > > address
> xxx
> > > services. Any idea where to find a sample or instruction manual?
>
> --
> 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
Confidentiality notice: 
This e-mail message, including any attachments, may contain legally privileged 
and/or confidential information. If you are not the intended recipient(s), or 
the employee or agent responsible for delivery of this message to the intended 
recipient(s), you are hereby notified that any dissemination, distribution, or 
copying of this e-mail message is strictly prohibited. If you have received 
this message in error, please immediately notify the sender and delete this 
e-mail message from your computer.


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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
You are missing a level; the address statement takes an environment name and a 
command string, but the intended usage is that the environment provides more 
than one command and that the first token of the command string is the command 
name. So you would have address myrexxapi myrexxcmd cmdparm. Of course, a call 
to foo could be written 

   bar = foo cmdparm
   address myrexxapi bar


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
ITschak Mugzach [imugz...@gmail.com]
Sent: Monday, March 21, 2022 3:02 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

High level assembler is the required language.
WhT I am trying to have is a program that will be called myrexxapi and will
be called as address myrexxapi cmdparm. Cmdparm is a parm to that program.

בתאריך יום ב׳, 21 במרץ 2022 ב-1:13 מאת Dave Jones :

> From my notes:
> Re: Calling PL/I from Rexx
>
> Yes, that should work.
>
> I would add NOEXECOPS to the main's options, to avoid the need for the
> leading '/', as the '/' tends to get forgotten.
>
> My personal preference is to specify:
> *PROCESS SYSTEM (TSO);
> PLIMOD: PROC (CPPLPTR)
> OPTIONS (MAIN REENTRANT) REORDER;
>
> DCL CPPLPTR PTR,
> 1 CPPL BASED (CPPLPTR),
> 3 CPPLCBUF PTR, /* MAPPED BY CBUF BELOW */
> 3 CPPLUPT PTR, /* MAPPING: SEE SYS1.MACLIB(IKJUPT) */
> 3 CPPLPSCB PTR, /* MAPPING: SEE SYS1.MACLIB(IKJPSCB) */
> 3 CPPLECT PTR; /* MAPPING: SEE SYS1.MACLIB(IKECPT) */
>
> DCL 1 CBUF BASED (CPPL.CPPLCBUF),
> 3 CBUFLEN FIXED BIN (15),
> 3 CBUFOFFS FIXED BIN (15),
> 3 CBUFCMD CHAR (32767); /* ACTUAL LENGTH IS CBUFLEN - 4 */
>
> DCL PARM CHAR (CBUF.CBUFLEN - CBUF.CBUFOFFS - 4) VAR
> INIT ((SUBSTR (CBUF.CBUFCMD, CBUF.CBUFOFFS + 1,
> CBUF.CBUFLEN - CBUF.CBUFOFFS - 4)));
>
> so as to be able to write a TSO command processor.
>
> In the above code, I've also included the declaration for PARM that
> will
> give you the same effect as on your example, but without the 100
> character
> limit.
>
> Good luck.
> DJ
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
--
ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
What are your specific questions after reading Chapter 14? Have you looked at 
sample code on, e.g., the CBT tape?


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
דַבֵּר אֶמֶת לְכּ�חַ


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
ITschak Mugzach [imugz...@gmail.com]
Sent: Sunday, March 20, 2022 10:35 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: looking for 'how to' developing Rexx host command

I scanned the tso rexx manuals and haven't found any instructions on how to
develop the host load module. I mean, the one who supplies the address xxx
services. Any idea where to find a sample or instruction manual?

Best,
ITschak

ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread Seymour J Metz
The OP is asking about the routine that processes the commands in a 
user-written environment,and Chapter 14 is appropriate for that. He is not 
asking how to write command routines for the existing TSO environment.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Itschak Mugzach [0305158ad67d-dmarc-requ...@listserv.ua.edu]
Sent: Sunday, March 20, 2022 12:26 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: looking for 'how to' developing Rexx host command

I don't think that chap. 14 discuss how to develop a host command
processor. I may be wrong... Please be more specific.

ITschak

*| **Itschak Mugzach | Director | SecuriTeam Software **|** IronSphere
Platform* *|* *Information Security Continuous Monitoring for Z/OS, zLinux
and IBM I **|  *

*|* *Email**: i_mugz...@securiteam.co.il **|* *Mob**: +972 522 986404 **|*
*Skype**: ItschakMugzach **|* *Web**: 
http://secure-web.cisco.com/1urFkh_uX_xckRTcrZQ2XcZEVdQw_PtxBq4O1Oksg8aVE8-F01JLx8Xze-WRIMKXuQ-yh8PhOTFAT5GZzPh1A6K5DHGUMrMRqf1sNmLenqMJS8-GhPXa3qCmbqALNotZNRpjh1TfB0SiWc0HUTME7hv1lBIl6AToq94ujkUdva6qbuCqtDp1HM8t0tAXukBK4Xv_l22Yiv0dvFxYCmO_3uHQcPLwbswlDX4rGg97o8VspKUR9tlZNp0TNLfytgwPaxhu3cMKpNzyf3nmSAKVYUL78oXHL84HlkTKphqqb8zSwxCDBJ3wF-X1rDidwtnVp5i4eAToiTTEa7_FVlv0dWdehEtuKZGu-vW3t_YPLAGh5_emzJL4Ojk2Hik7uNHZlQnrvLIOXt0h-q6wrdO4lCno02pyPQ_Ld_XaHCwZEAHBFcsazYRT4x0S-RJPTng-t/http%3A%2F%2Fwww.Securiteam.co.il
  **|*





On Sun, Mar 20, 2022 at 4:56 PM Charles Mills  wrote:

> TSO/E Rexx Reference Chapter 14. Language Processor Environments?
>
> Charles
>
>
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
> Behalf Of ITschak Mugzach
> Sent: Sunday, March 20, 2022 7:36 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: looking for 'how to' developing Rexx host command
>
> I scanned the tso rexx manuals and haven't found any instructions on how to
> develop the host load module. I mean, the one who supplies the address xxx
> services. Any idea where to find a sample or instruction manual?
>
> Best,
> ITschak
>
> ITschak Mugzach
> *|** IronSphere Platform* *|* *Information Security Continuous Monitoring
> for z/OS, x/Linux & IBM I **| z/VM coming soon  *
>
> --
> 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

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


Re: looking for 'how to' developing Rexx host command

2022-03-21 Thread ITschak Mugzach
High level assembler is the required language.
WhT I am trying to have is a program that will be called myrexxapi and will
be called as address myrexxapi cmdparm. Cmdparm is a parm to that program.

בתאריך יום ב׳, 21 במרץ 2022 ב-1:13 מאת Dave Jones :

> From my notes:
> Re: Calling PL/I from Rexx
>
> Yes, that should work.
>
> I would add NOEXECOPS to the main's options, to avoid the need for the
> leading '/', as the '/' tends to get forgotten.
>
> My personal preference is to specify:
> *PROCESS SYSTEM (TSO);
> PLIMOD: PROC (CPPLPTR)
> OPTIONS (MAIN REENTRANT) REORDER;
>
> DCL CPPLPTR PTR,
> 1 CPPL BASED (CPPLPTR),
> 3 CPPLCBUF PTR, /* MAPPED BY CBUF BELOW */
> 3 CPPLUPT PTR, /* MAPPING: SEE SYS1.MACLIB(IKJUPT) */
> 3 CPPLPSCB PTR, /* MAPPING: SEE SYS1.MACLIB(IKJPSCB) */
> 3 CPPLECT PTR; /* MAPPING: SEE SYS1.MACLIB(IKECPT) */
>
> DCL 1 CBUF BASED (CPPL.CPPLCBUF),
> 3 CBUFLEN FIXED BIN (15),
> 3 CBUFOFFS FIXED BIN (15),
> 3 CBUFCMD CHAR (32767); /* ACTUAL LENGTH IS CBUFLEN - 4 */
>
> DCL PARM CHAR (CBUF.CBUFLEN - CBUF.CBUFOFFS - 4) VAR
> INIT ((SUBSTR (CBUF.CBUFCMD, CBUF.CBUFOFFS + 1,
> CBUF.CBUFLEN - CBUF.CBUFOFFS - 4)));
>
> so as to be able to write a TSO command processor.
>
> In the above code, I've also included the declaration for PARM that
> will
> give you the same effect as on your example, but without the 100
> character
> limit.
>
> Good luck.
> DJ
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
-- 
ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Jay Maynard
Perhaps an HLASM shim to a C routine?

On Sun, Mar 20, 2022, 22:36 David Crayford  wrote:

> On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> > On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> >
> > > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> > >
> > Wouldn't a SAMPLIB member be nice?  In a HLL?
>
> Writing a REXX command processor in a HLL is non-trivial to do correctly.
> I've done it a few times and it requires creating a persistent LE
> environment and hanging the pointer on the user area inthe
> environment block. Like most things on z/OS, REXX programming services
> were designed for HLASM. Unfortunately, for the kind of APIs I'm interested
> in HLASM is practically useless. For example, regular
> expressions https://github.com/daveyc/RTK.
>
> It's far easier to just use a more contemporary programming language which
> has a modern API for writing packages. Although, then you need to know
> C/C++ for Python, Lua, Ruby, Node etc.
>
>
>
> >
> > > -Original Message-
> > > From: ITschak Mugzach
> > > Sent: Sunday, March 20, 2022 7:36 AM
> > >
> > > I scanned the tso rexx manuals and haven't found any instructions on
> how to
> > > develop the host load module. I mean, the one who supplies the address
> xxx
> > > services. Any idea where to find a sample or instruction manual?
>
> --
> 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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread David Crayford
On Sun, 2022-03-20 at 10:08 -0500, Paul Gilmartin wrote:
> On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
> 
> > TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> > 
> Wouldn't a SAMPLIB member be nice?  In a HLL?

Writing a REXX command processor in a HLL is non-trivial to do correctly. I've 
done it a few times and it requires creating a persistent LE environment and 
hanging the pointer on the user area inthe
environment block. Like most things on z/OS, REXX programming services were 
designed for HLASM. Unfortunately, for the kind of APIs I'm interested in HLASM 
is practically useless. For example, regular
expressions https://github.com/daveyc/RTK.

It's far easier to just use a more contemporary programming language which has 
a modern API for writing packages. Although, then you need to know C/C++ for 
Python, Lua, Ruby, Node etc.



> 
> > -Original Message-
> > From: ITschak Mugzach
> > Sent: Sunday, March 20, 2022 7:36 AM
> > 
> > I scanned the tso rexx manuals and haven't found any instructions on how to
> > develop the host load module. I mean, the one who supplies the address xxx
> > services. Any idea where to find a sample or instruction manual?

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Dave Jones
From my notes:
Re: Calling PL/I from Rexx

Yes, that should work.

I would add NOEXECOPS to the main's options, to avoid the need for the
leading '/', as the '/' tends to get forgotten.

My personal preference is to specify:
*PROCESS SYSTEM (TSO);
PLIMOD: PROC (CPPLPTR)
OPTIONS (MAIN REENTRANT) REORDER;

DCL CPPLPTR PTR,
1 CPPL BASED (CPPLPTR),
3 CPPLCBUF PTR, /* MAPPED BY CBUF BELOW */
3 CPPLUPT PTR, /* MAPPING: SEE SYS1.MACLIB(IKJUPT) */
3 CPPLPSCB PTR, /* MAPPING: SEE SYS1.MACLIB(IKJPSCB) */
3 CPPLECT PTR; /* MAPPING: SEE SYS1.MACLIB(IKECPT) */

DCL 1 CBUF BASED (CPPL.CPPLCBUF),
3 CBUFLEN FIXED BIN (15),
3 CBUFOFFS FIXED BIN (15),
3 CBUFCMD CHAR (32767); /* ACTUAL LENGTH IS CBUFLEN - 4 */

DCL PARM CHAR (CBUF.CBUFLEN - CBUF.CBUFOFFS - 4) VAR
INIT ((SUBSTR (CBUF.CBUFCMD, CBUF.CBUFOFFS + 1,
CBUF.CBUFLEN - CBUF.CBUFOFFS - 4)));

so as to be able to write a TSO command processor.

In the above code, I've also included the declaration for PARM that will
give you the same effect as on your example, but without the 100 character
limit.

Good luck.
DJ

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread ITschak Mugzach
I don’t. Still Loki g for host command processor guidelines and examples.

ITschak

בתאריך יום א׳, 20 במרץ 2022 ב-20:44 מאת Steve Smith :

> Do not confuse "Language Processor" environments with "Host Command"
> environments.  Well, too late, maybe everyone does.  REXX has so many
> different interfaces and customization options that it's hard to keep up.
> HCEs are discussed in the Programming Services - Replaceable Routines
> chapter, iirc.
>
> sas
>
>
> On Sun, Mar 20, 2022 at 12:27 PM Itschak Mugzach <
> 0305158ad67d-dmarc-requ...@listserv.ua.edu> wrote:
>
> > I don't think that chap. 14 discuss how to develop a host command
> > processor. I may be wrong... Please be more specific.
> >
> > ITschak
> >
> >
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
-- 
ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Steve Smith
Do not confuse "Language Processor" environments with "Host Command"
environments.  Well, too late, maybe everyone does.  REXX has so many
different interfaces and customization options that it's hard to keep up.
HCEs are discussed in the Programming Services - Replaceable Routines
chapter, iirc.

sas


On Sun, Mar 20, 2022 at 12:27 PM Itschak Mugzach <
0305158ad67d-dmarc-requ...@listserv.ua.edu> wrote:

> I don't think that chap. 14 discuss how to develop a host command
> processor. I may be wrong... Please be more specific.
>
> ITschak
>
>

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Itschak Mugzach
I don't think that chap. 14 discuss how to develop a host command
processor. I may be wrong... Please be more specific.

ITschak

*| **Itschak Mugzach | Director | SecuriTeam Software **|** IronSphere
Platform* *|* *Information Security Continuous Monitoring for Z/OS, zLinux
and IBM I **|  *

*|* *Email**: i_mugz...@securiteam.co.il **|* *Mob**: +972 522 986404 **|*
*Skype**: ItschakMugzach **|* *Web**: www.Securiteam.co.il  **|*





On Sun, Mar 20, 2022 at 4:56 PM Charles Mills  wrote:

> TSO/E Rexx Reference Chapter 14. Language Processor Environments?
>
> Charles
>
>
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
> Behalf Of ITschak Mugzach
> Sent: Sunday, March 20, 2022 7:36 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: looking for 'how to' developing Rexx host command
>
> I scanned the tso rexx manuals and haven't found any instructions on how to
> develop the host load module. I mean, the one who supplies the address xxx
> services. Any idea where to find a sample or instruction manual?
>
> Best,
> ITschak
>
> ITschak Mugzach
> *|** IronSphere Platform* *|* *Information Security Continuous Monitoring
> for z/OS, x/Linux & IBM I **| z/VM coming soon  *
>
> --
> 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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread ITschak Mugzach
Sure. HLL is my mother language.

ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *




On Sun, Mar 20, 2022 at 5:09 PM Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu> wrote:

> On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:
>
> >TSO/E Rexx Reference Chapter 14. Language Processor Environments?
> >
> Wouldn't a SAMPLIB member be nice?  In a HLL?
>
> >-Original Message-
> >From: ITschak Mugzach
> >Sent: Sunday, March 20, 2022 7:36 AM
> >
> >I scanned the tso rexx manuals and haven't found any instructions on how
> to
> >develop the host load module. I mean, the one who supplies the address xxx
> >services. Any idea where to find a sample or instruction manual?
>
> --
> gil
>
> --
> 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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Paul Gilmartin
On Sun, 20 Mar 2022 07:56:39 -0700, Charles Mills wrote:

>TSO/E Rexx Reference Chapter 14. Language Processor Environments?
>
Wouldn't a SAMPLIB member be nice?  In a HLL?

>-Original Message-
>From: ITschak Mugzach
>Sent: Sunday, March 20, 2022 7:36 AM
>
>I scanned the tso rexx manuals and haven't found any instructions on how to
>develop the host load module. I mean, the one who supplies the address xxx
>services. Any idea where to find a sample or instruction manual?

-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Charles Mills
TSO/E Rexx Reference Chapter 14. Language Processor Environments?

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of ITschak Mugzach
Sent: Sunday, March 20, 2022 7:36 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: looking for 'how to' developing Rexx host command

I scanned the tso rexx manuals and haven't found any instructions on how to
develop the host load module. I mean, the one who supplies the address xxx
services. Any idea where to find a sample or instruction manual?

Best,
ITschak

ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Paul Gilmartin
On Sun, 20 Mar 2022 16:35:37 +0200, ITschak Mugzach wrote:

>I scanned the tso rexx manuals and haven't found any instructions on how to
>develop the host load module. I mean, the one who supplies the address xxx
>services. Any idea where to find a sample or instruction manual?
>
Does this help?: 


-- 
gil

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


Re: looking for 'how to' developing Rexx host command

2022-03-20 Thread Steve Beaver
I will send you the code you are looking for tomorrow 

Sent from my iPhone

No one said I could type with one thumb 

> On Mar 20, 2022, at 09:35, ITschak Mugzach  wrote:
> 
> I scanned the tso rexx manuals and haven't found any instructions on how to
> develop the host load module. I mean, the one who supplies the address xxx
> services. Any idea where to find a sample or instruction manual?
> 
> Best,
> ITschak
> 
> ITschak Mugzach
> *|** IronSphere Platform* *|* *Information Security Continuous Monitoring
> for z/OS, x/Linux & IBM I **| z/VM coming soon  *
> 
> --
> 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


looking for 'how to' developing Rexx host command

2022-03-20 Thread ITschak Mugzach
I scanned the tso rexx manuals and haven't found any instructions on how to
develop the host load module. I mean, the one who supplies the address xxx
services. Any idea where to find a sample or instruction manual?

Best,
ITschak

ITschak Mugzach
*|** IronSphere Platform* *|* *Information Security Continuous Monitoring
for z/OS, x/Linux & IBM I **| z/VM coming soon  *

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