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