A number of people have responded but not actually spelled out the reason.  A 
comment in the first line containing "REXX" is required if the module resides 
in a //SYSPROC DD -- and not if it's in the //SYSEXEC DD -- because //SYSPROC 
modules are interpreted by default by the CLIST interpreter and //SYSEXEC by 
the REXX interpreter.  The /* REXX */ marker in a //SYSPROC module gives the 
system a chance to toggle over to REXX.  There is no analogous switch, AFAIK, 
to have //SYSEXEC modules interpreted as CLISTs.

I'm inferring; I don't recall reading exactly this in any documentation.  But 
it makes sense.

---
Bob Bridges, [email protected], cell 336 382-7313

/* Asked during these last weeks who caused the riots and the killing in LA, my 
answer has been direct and simple:  Who is to blame for the riots?  The rioters 
are to blame.  Who is to blame for the killings?  The killers are to blame.  
-Dan Quayle, U.S. Vice President, after the Rodney King riots in LA */

-----Original Message-----
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of 
Seymour J Metz
Sent: Wednesday, September 29, 2021 10:22

TSO SYSPROC is the only case I know of where /* REXX */ is required.

-----Original Message-----
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of 
Phil Smith III
Sent: Wednesday, September 29, 2021 10:07

I think (a) it's documented that way in some places; (b) Some environments may 
even require that; (c) that's how some/many examples have it; and (d) it's 
bizarre, because these all work in TSO:

/* Rexx */
/* This rexx program. */
/* This is (rexx) */
/* This is not(rexx)s */
/* Thisisrexxyep */

but

/* This is a program */

does not. So something is parsing the entire first line, looking for the 
leading "/*" and four letters "rexx" in a row, case-insensitive. Bizarre.

-----Original Message-----
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of CM 
Poncelet
Sent: Tuesday, September 28, 2021 21:58

The "/* REXX */" part is required only if the REXX exec is to be run from a PDS 
allocated to DDNAME=SYSPROC instead of to DDNAME=SYSEXEC.
 
SYSPROC is for CLISTs, SYSEXEC is for REXXs.

> --- On 29/09/2021 6:54 am, Bob Bridges wrote:
>> Purely by the way, but I've never really understood why so many REXX 
>> modules I see start like this:
>>
>>    /* REXX */
>>    /* Module: Name
>>       Author: Bob Bridges the Magnificent
>>       Purpose: Convert ANSI dates to internal format, or whatever. */
>>
>> ...instead of something like this:
>>
>>    /* This REXX converts ANSI dates to internal format, or whatever. 
>> */
>>    /* Module: Name
>>       Author: Bob Bridges the Magnificent */

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to