Pauyl Gilmartin has asked for conjectures about what such JCL constructs as
// IF ( FALSE ) THEN
//B EXEC PGM=IEFBR14
// ELSE
//C EXEC PGM=IEFBR14
// ENDIF
The first thing toi be said about this construct and its brethren in Paul's
post is that they are ridiculous.. The parentheses are gratuitous in the
sense that the expressions
// IF ABEND
// IF (ABEND)
// IF ABEND=TRUE
// IF (ABEND=TRUE)
The constructs
// IF ABEND=TRUE THEN
// IF ABEND=FALSE THEN
were presumably introduced for the delectation of COBOL programmers who know
no Boolean algebra and thus find the constructs
// IF ABEND THEN
// IF NOT(ABEND)
too terse.
. As such they are, I suppose, innocuous; but their use by anyone of even
modest technical competence would be unwise. It would mark them as
uninformed or worse.
What then does or could
//IF (FALSE) THEN . . .
mean?
My conjecture must be uninformed, because it would never have occurred to me
to write such a JCL statement, but I will hazard the guesses that
o '// IF FALSE THEN' is a contradiction that is always false, and
o '// IF TRUE THEN' is a tautology that is always true.
If these guesses, which I have refrained from attempting to verify, are
correct
o JCL following the first would not be executed and the JCL following its
associated THEN would
be executed if present; and
o JCL following the second would be executed and the JCL following its
associated THEN would be
ignored if present.
John Gilmore
Ashland, MA 01721
USA
_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html