On Thu, 2 May 2019, at 20:59, Andreas Fischer wrote:
> actually i never wrote CLISTs. can't tell you where i got it from,
> parmlib? ISPF? TWS? it's so long ago that i don't remember, and 'm
> simply used to it. sorry when it's confusing for you.
It didn't confuse me.
> once talking about it, does it make a difference other than visibility
> when coding as you suggested, for example in terms of performace?
I doubt it, but whereas (as I vaguely remember) parts of ispf implicitly
understand "&thing" as a variable, I think that support dates a long
way back.
I'm a little surprised that it works with rexx variables too.
I think the most important reason not to use "&thing[.]" in rexx is that
outwith ispf it definitely will not work.
That is, when you use
label9 = 'ZCSR'
"(line88) = linenum .&label9."
ispf has somehow to understand that "&label9." means a
reference to a rexx variable named "label9" (ie without the "&").
OK, we know ispf can do that. But when someone does
label9 = 'ZCSR'
"(line88) = linenum ." || label9
or
label9 = '.ZCSR'
"(line88) = linenum" label9
rexx builds the expected 'pure' edit command (without unresolved
variables in it) and passes it to edit. If you had occasion to trace
execution of that you'd see the value of 'label9' being placed in the
command before it's passed to edit, whereas in what you've used
you'll only see the variable's name.
If you write an application in rexx you need to be clear whether rexx
or some other part of a system interprets the command string.