On Tue, May 31, 2005 at 03:16:36PM +0000, john gilmore ([EMAIL PROTECTED]) wrote: > It will he helpful to go back in time to the early years of OS/MFT for the > System/360. The syntax of JCL is of course modelled on that of the F > Assembler, and its macro phase in particular. JCL statements then had and > still have parameters of two sorts, positional and keyword. [snip] > Let me also note that, while there is some similarity between the positional > and keyword parameters of a JCL statement and those of an assembly-language > macro instruction or the corresponding macro definition, there is a crucial > difference too. An HLASM macro definition may have both, and they may be > specified in any order in a corresponding macro instruction.
HLASM didn't exist back in the OS/360 days... You start out by saying that JCL was modelled after ASM F's macro language, and then you point out how JCL is different from HLASM's macro language. Hmmm. I seem to recall that ASMF's macro language *required* all positional parameters to be specified prior to any keyword parameters. This is in fact the way that JCL works. [snip] > Once written within a procedure neither of the DD statements > > //<ddname> DD DUMMY > > or > > //<ddname> DD DUMMY, . . . > > can be altered into one that in fact is functional, permits non-null outputs > to be written or non-null inputs to be read. Say what? Sure it can, you just (may) have to supply more info on the override. > On the other hand > > //SYSPRINT DD DSN=NULLFILE,BLKSIZE=0,LRECL=137,RECFM=VBA > > can be altered readily by simply supplying a different licit value of DSN=. Not likely. DISP= is missing and the default of (NEW,DELETE) is seldom useful. > This > difference was the basis for my statement that DSN=NULLFILE was superior to > DUMMY when used inside procedures. There is absolutely no internal difference between DSN=NULLFILE and DUMMY. I believe this is or at least was stated somewhere in the manuals (JCL?). I'm fairly certain that a program cannot even determine whether the JCL specified DSN=NULLFILE vs DUMMY, because DUMMY is represented in the JFCB via the DSN being NULLFILE. It should also be noted that DUMMY and DSN= are defined as mutually exclusive. Therefore on a DD override, DSN= supercedes DUMMY and DUMMY supercedes DSN=. (This statement applies only to overrides; what happens if you code both DUMMY and DSN= on a single DD is left as an exercise for the reader.) > If, say, one wants, N instances of the same > DCB information, this is > better accomplished by coding one operational DCB in extenso and using N - 1 > references than it is > by coding one non-operational DD statement that provides DCB= values (or > their functional > equivalents) and N others that acquire this information by reference. That's just your preference. You provide no justification for your claim that it's "better". > Finally, I want to say something about my notionally 'ex cathedra' > pronouncemnts. Like the one immediately above? > I don't believe in arguments from authority of the form 'Things are thus > because I say so'. But you just did that which you say you don't believe in! /Leonard ---------------------------------------------------------------------- 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