M4 does look like an excellent choice, as far as capabilities go. But John's point is exactly what I was thinking: How do I run M4 against my PDS input? If someone can point me to some JCL to accomplish this, I will probably head in that direction.
The next closest option looks like the C preprocessor. The PPONLY option causes the preprocessed code to be sent to SYS010 without invoking the compiler. I've run some experiments, and the only shortcoming seems to be that all macro expansions result in a single line of output. (A requirement I failed to mention.) Multi-line macro definitions, which all but the last line ending in a backslash, always seem to create one long line. This macro definition: #define PAT3 \ * This is a \ multi-line \ macro expansion generates this output: * This is a multi-line macro expansion My solution to this is to include my own delimiter in the macro definition and use a Rexx post-processor to line-break at the delimiter. I will continue to appreciate suggestions. --------------- On Fri, 18 Nov 2011 11:09:18 -0600, McKown, John <john.mck...@healthmarkets.com> wrote: >> -----Original Message----- >> From: IBM Mainframe Assembler List >> [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Paul Gilmartin ><snip> >> Or use existing art: >> >> http://en.wikipedia.org/wiki/M4_%28computer_language%29 >> >> -- gil > >Oh, that's just __nasty__. m4 is complicated. And, in z/OS, is UNIX only and so more difficult for the "average programmer". > >-- >John McKown >Systems Engineer IV >IT > >Administrative Services Group > >HealthMarkets(r) > >9151 Boulevard 26 * N. Richland Hills * TX 76010 >(817) 255-3225 phone * >john.mck...@healthmarkets.com * www.HealthMarkets.com > >Confidentiality Notice: This e-mail message may contain confidential or proprietary information. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. HealthMarkets(r) is the brand name for products underwritten and issued by the insurance subsidiaries of HealthMarkets, Inc. -The Chesapeake Life Insurance Company(r), Mid-West National Life Insurance Company of TennesseeSM and The MEGA Life and Health Insurance Company.SM