Exactly. JCL is just a table of data like you mentioned with the XML/JSON comparisons. I would imagine it's used to build control blocks like JSCB/JCT/SCT/SIOT/JFCB prior to job execution - more tables.

Maybe a bigger issue is with non-mainframe folks wondering why JCL is there in the first place. I started with microcomputers, programming things in BASIC where we were told to hard-code full filenames in the program itself. Already I could see how silly that would be in production, having to change the source code just to work with different files. Unix solved that in clever ways with parameter passing, stdin, and things like that which work well in shell scripts. Mainframes solved it with 8 character DD names and JCL redirection.

On 1/6/2022 7:05 PM, Andrew Rowley wrote:
On 7/01/2022 12:23 pm, David Crayford wrote:

I understand that it's declarative. But it has logic such as IF/THEN. That is no reason why it couldn't have been a scripting language like CL on AS/400.

IF/THEN was a late addition, and is probably one of the biggest problems with JCL because it doesn't work like IF/THEN in a programming language. IF/THEN is really a property of the enclosed steps (I suspect it generates the same thing as equivalent COND statements on the steps) rather than a logical block in the JCL.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to