<snip>
> I've never had the slightest need to use the labels generated in the 
MF=L form. Who does?  They're not documented.  I'll grant that they can 
probably be considered self-documenting, but is there a reasonable 
guarantee the labels won't be changed in a new release?  The MF=E 
expansions don't use them (thank goodness), ...
> 
The doc (and Peter Relson) seem to say they can and should be used that 
way.
</snip>

I'm not positive which "that way" referred to. I don't think I said that 
the labels produced by the list form ought to be used. The interface is 
the macro. Anything else is not supported (but might well work). 

<snip>
... so what are they for? Macros that I have had occasion to reference the 
parmlist for (ATTACH comes to mind), have a perfectly good DSECT macro 
that I can use when I need it.
</snip> 

As long as you don't mind being in unsupported territory. The IEZATTCH and 
IEZATTCX macros are not programming interfaces.

<snip>
I'd prefer staying with tradition and coding its name in column
one, for legibility.
</snip>

FWIW, I suppose that you could code
LABEL_TRADITIONAL   THEMACRO MF=(L,LABEL_NEWFORM),PLISTVER=MAX
and you could use  THEMACRO MF=(E,LABEL_TRADITIONAL)
if you must (but the "two labels" would have to be unique)

For the list form, you would land with
LABEL_TRADITIONAL EQU LABEL_NEWFORM 
LABEL_NEWFORM       DS    0D 
...

<snip>
It's great that the new MF=L macros do not require initialization but is
"which ones" documented anywhere? I tend to use a "model" scheme for
</snip>
I cannot imagine anyone trying to make (let alone be willing to keep up to 
date) a list of "which ones". I could imagine there being a sentence on 
individual macros saying that the list form need not be used as a "model" 
(or whatever wording seems suitable). In practice, if the list form 
supports no keywords other than PLISTVER, it need not be used as a model. 
In practice, any time that the execute form defaults to "COMPLETE", e.g. 
MF=(E,mylist,COMPLETE), the list form need not be used as a model -- 
because "COMPLETE" means that the entire parameter area is to be 
initialized. 

<snip>
I notice that for older macros with "M=L" the parameter
descriptions are in table form; for newer macros with "MF=(L,list addr)"
the descriptions are in outline form.
</snip>
I'm not sure what you mean here. Could you provide an example? I think of 
the syntax diagram being a table (when it's not RR-track), but the 
parameter descriptions being textual. And of course for list form itself, 
those with MF=(L,list addr) support only PLISTVER or no keywords at all.

Peter Relson
z/OS Core Technology Design

Reply via email to