On Mon, 20 Jun 2022 14:39:20 -0700, Charles Mills wrote:

>Nay! Rexx passes everything by value, both to internal and to external 
>functions. So passing <context> will give the assembler code 200 zero bytes to 
>play with but it will go away on return.
>
There might be a *slightly* better alternative.  The ADDRESS
LINK*/ATTACH* family copy modified arguments back on return.
This might include the address of obtained storage.
There's a Rexx example perhaps in SAMPLIB and in:
    Cryptographic Services
    Integrated Cryptographic Service Facility Application Programmer's Guide
     SC14-7508-10
The reply could include a pointer to obtained storage which Rexx
could access, R/W with STORAGE().

>And it is unnecessary. I know of no need for persistent storage. Perhaps it is 
>worth persisting the STIMER MF=L and friends. (I have not yet done detail 
>design. If indicated I will use name/token to do the persisting. There is also 
>a persistent "user" pointer in the "environment block" that Rexx maintains and 
>passes, so that is perhaps a better alternative. I have some detail design 
>work to do.)
>
NTS is an alternative.  And long before NTS existed my mentor showed me how to 
do somethint
similar with CSV and a writable data module.

>The pseudocode is otherwise on target. I would add (watch the line wrap!)
>
>      When Left(Res, 1) = 'T'
>        /* Rexx PARSE command from Res */
>        /* Re-parametize or whatever is indicated by the command */
>        Iterate
>    end
>end
>/* Close files, clean up and terminate */

-- 
gil

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to