STOP is the easy one, whether APPC, batch, STC or TSU. It can all be done in REXX or whatever you prefer; there's no need for a QEDIT.
-- 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, June 21, 2022 12:54 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Some UNIX file usage questions _console2() does everything appropriate, including managing the CIB chain. A batch job could, if appropriate, respond to STOP. Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Tuesday, June 21, 2022 9:36 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Some UNIX file usage questions Does _console2() delete the CIB in order to allow and additional MODIFY? For a batch job, only the MODIFY CIB is an issue. ________________________________________ From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of David Crayford <dcrayf...@gmail.com> Sent: Tuesday, June 21, 2022 9:17 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Some UNIX file usage questions On 21/06/2022 9:09 pm, Seymour J Metz wrote: > If all that you want to do is to check for STOP, then it should be trivial to do it in C++. If you also want to enable and look for MODIFY text, then you need to use QEDIT. At that point it's easier to do it in HLASM. The __console2() C/C++ RTL function does everything you could want to do with console services other than START, which I don't care about https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ibm.co%2F&data=05%7C01%7Csmetz3%40gmu.edu%7C6243615c576340cd5f8d08da53a6cdb9%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637914273128591865%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Rwc9HQjXfKGGT1%2BMrdrhjII%2FaNaaL8k4bTWppKG2FFI%3D&reserved=0 m%2Fdocs%2Fen%2Fzos%2F2.1.0%3Ftopic%3Dfunctions-console2-enhanced-console-co mmunication-services&data=05%7C01%7Csmetz3%40gmu.edu%7C77d498419638409e4 ab608da53888b89%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637914143163123 218%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1h aWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=DuHrRUBqMMJI%2BOuri59jghQ37N%2F qWy189iFtag5qn1A%3D&reserved=0. Maybe Charles will open up his code for inspection and (just for fun) we can see if it's easier to implement in C++ or Java :) > > I've used Assembler H and REXX in an environment where code and design reviews were mandatory. And, yes, discussions included alternate ways of doing things, some accepted, some not. > > > -- > 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, June 20, 2022 1:34 PM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Some UNIX file usage questions > > I could care less about Python. What is disconcerting is why you would > choose REXX/Assembler when you could write the same thing with less code > and complexity using C++ which you already know. Maybe you're just > having fun and there is nothing wrong with that. There is nobody to > review your code and ask for changes like where I work. > > On 21/06/2022 1:31 am, Charles Mills wrote: >> I am not the client. I guess the client makes its decisions based on a variety of factors. I have many skills that are valuable to the client, and I would guess that "best language for the application in the opinion of a guy on IBMMAIN" (as opposed to "demonstrably adequate language") is not high on the client's list of factors. >> >> I think you are engaging in "engineer-ism" (there may be a better word?). Python may well be the best language for the job, for some values of best. Rexx is a perfectly adequate language for the job. "Integrating a new developer" would be for the client what "implementing a new language environment" would be for me. >> >> Charles >> >> >> -----Original Message----- >> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of David Crayford >> Sent: Monday, June 20, 2022 9:58 AM >> To: IBM-MAIN@LISTSERV.UA.EDU >> Subject: Re: Some UNIX file usage questions >> >> I take it you must be the client? I can't fathom any client who would be >> stupid enough to allow a vendor to write code in their language of >> choice due to their personal skill set. That's technical debt. >> >> On 20/06/2022 11:34 pm, Charles Mills wrote: >>> Aww David, I respect you more than that reply. >>> >>> Of course I could learn to write Hello World in Python more quickly than I can write this sentence. But what I alluded to is that past experience teaches me that getting from Hello World to a working system on z/OS is many days of agony. >>> >>> Charles >>> >>> >>> -----Original Message----- >>> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of David Crayford >>> Sent: Sunday, June 19, 2022 9:32 PM >>> To: IBM-MAIN@LISTSERV.UA.EDU >>> Subject: Re: Some UNIX file usage questions >>> >>> You could have learned Python in the time it took you to write this email. >>> >>> On 20/06/2022 1:15 am, Charles Mills wrote: >>>>> Why not use Python? Good question. >>>> 1. I can undoubtedly do it perfectly satisfactorily, and almost certainly more quickly, in Rexx (because of the learning curve). I would have trouble justifying billing the client for my Python learning time when there is little benefit (that I know of -- correct me if I am wrong) for the client who is paying the bills. >>>> >>>> Why not, then, learn Python on my own time? Don't I want to learn Python? Yes I do, but there are only so many hours in a day, and there are other things I want to learn more than I do Python. For example, I would rather spend the time learning to make the Roman-Jewish fried artichokes that are in the current Cooks Illustrated. Learning Python is just not very high on my bucket list. It's there, but probably not high enough to ever rise to the top. >>>> >>>> 2. I know exactly how to execute a Started Task written in Rexx, and I know most of the gotchas. In my experience, THAT is the problem with the "new tools" on z/OS. What would I have to do to execute a Started Task written in Python? What are the gotchas? Heck, what do I have to do to set up any Python environment at all? That is the time-consuming issue, and it holds about zero personal gratification for me. I could probably learn the Python language pretty readily, and it would be one more notch in my belt. Solving the probable gotchas of getting Python to actually do productive work on z/OS -- not so much. >>>> .... >>>> Not for me, and probably not for the "report" (I am flattering the requirement calling it a report -- maybe call it an "alert") that the client wants. And again, a learning curve that is difficult to justify. >>>> >>>> So I think I will write it in Rexx, with perhaps a little bit of Assembler. >>> Does your client REALLY want to maintain assembler code? Our company >>> policy is not to use assembler for new code due to lack of available >>> skills which will only get worse. >>> >>> >>>> Charles >>>> >>>> >>>> -----Original Message----- >>>> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of David Crayford >>>> Sent: Saturday, June 18, 2022 11:43 PM >>>> To: IBM-MAIN@LISTSERV.UA.EDU >>>> Subject: Re: Some UNIX file usage questions >>>> >>>> On 19/06/2022 1:33 am, Paul Gilmartin wrote: >>>>> On Sat, 18 Jun 2022 09:51:45 -0700, Charles Mills wrote: >>>>>> ... >>>>>> I picture writing the started task in Rexx, so I would have to write to a DD >>>>>> name allocated to the UNIX file (either dynamically or with JCL), not with >>>>>> "native" C fopen(), fwrite(), etc. Does that change any of the answers? >>>>>> >>>>> Why? In Rexx you can "address SYASCALL write ..." instead. >>>> Why REXX? Is it a case of knowing the banjo so you play Stairway to >>>> Heaven in the style of Earl Schruggs? >>>> >>>> Why not use IBMs z/OS Python? You can then use SQLite instead of a file >>>> which will significantly simplify writing reports. In fact, it would >>>> trivial to serve those >>>> reports as a REST API and put a nice WebUI on top using a simple >>>> template that supports data tables. >>>> >>>> ---------------------------------------------------------------------- >>>> 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 >> >> ---------------------------------------------------------------------- >> 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 ---------------------------------------------------------------------- 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