OK, just answer me one question.
If you have to use REXX anyway, why not use it for everything?

You guys are making this harder than it really is because of your bias
toward Assembler. (Of course, this is the Assembler List.)

I keep seeing this code and that code to perform the pre-process. Using
assembler is UGLY unless you use a loop of AREAD and PUNCH.

A simple REXX to read and punch bypassing conditional .AGO statements
(in what-ever syntax) is going to take all of 20 minutes and the real
COBOL programmer still codes in COBOL. Using Assembler, he has to now
follow ASSEMBLER rules, not COBOL. Same with C.

For a sample REXX (although from VSE) that pre-processes a COBOL program
replacing specific code with another code, have a look at my sample
BSTTPREP at http://www.vse2pdf.com/coolstuff.


Tony Thigpen

-----Original Message -----
 From: Patrick Roehl
 Sent: 11/18/2011 01:26 PM
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


Reply via email to