I wrote a product that as part of its processing generated JCL. (It was a side chore; it was not a "JCL-generator.") And yes, JCL mapped really well to an OOP sort of approach. Within DDs you have positional operand classes and keyword operand classes, and then various children of those, and so forth.
RECFM objects stood on their own, so an abstract file object could have a RECFM, and then you could assign that RECFM object to a DD statement for that file. It sounds weird but it actually mapped quite well. Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Andrew Rowley Sent: Monday, July 9, 2018 4:15 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: REXX as JCL replacement On 9/07/2018 10:46 PM, Hobart Spitz wrote: > > Basically, JCL is so far from real a programming language, that I can't > describe it. > That's because JCL isn't a programming language. There are plenty of other languages that also suck as programming languages e.g. HTML, XML, JSON, but that's not what they are supposed to be. JCL is really a kind of definition language. In programming language terms it is more like a set of classes in OOP than a language in itself: you have a job, which has steps, steps have DDs etc. The syntax is old fashioned, but the concepts are very much OOP. It would be relatively simple to create a set of classes in your OOP language of choice to hide the syntax - just create a Job object, add Step objects, add DataDefinition objects etc. and have a Submit method emit JCL. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN