On 2/11/2013 7:59 AM, Paul Gilmartin wrote:
On Feb 11, 2013, at 08:37, Bill Fairchild wrote:
In order to make a simple trick like this easy to maintain by someone else in
the future, or even myself (since my intricately detailed memory is rather
short-lived), I would want to write so much documentation into the code that I
would rather spend much less time and write three copies of the macro to make
the code triple-pathed.
Dismayingly, when there are multiple options, the multiplicity
grows exponentially.
The MF=M form of RACROUTE is sooo nice for situations like this. I wish all
macros had that!
We once had a situation where we coded two GETMAIN macros in a service (one for
MVS/SP and one for MVS/XA. Yes, this was a long time ago...) Then we needed
boundary=page as an option; suddenly it was four macros. Before too long we had
32 GETMAINs coded!
From experience I can tell you it's NOT easier to read and NOT easier to
maintain 32 macros (and the logic to get to them) than it is to maintain ONE
stream of conditional IF/ENDIF with modification of a single parameter
list--preferably via the MF=M form macro.
--
Edward E Jaffe
Phoenix Software International, Inc
831 Parkview Drive North
El Segundo, CA 90245
http://www.phoenixsoftware.com/