I really gotta get back into PL/1. It was my first language, and I still like it. Just haven't used it in a few decades.
--- Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313 /* The more sophisticated the technology, the more vulnerable it is to primitive attack. People often overlook the obvious. -Dr Who, 1978 */ -----Original Message----- From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> On Behalf Of Robert Prins Sent: Sunday, March 17, 2024 10:44 ....I've updated PL/I code myself reducing ***CPU*** time from well over three hours to just 20 minutes, by just changing two declarations, and while working at a Dutch airline company, I reduced CPU usage of two PL/I programs calculating CRCs by more than 99.5%, removing calls to the PL/I library. Hell, if you look at the current Enterprise PL/I Programming Guide, GI13-5620-00, on PDF page 372 (book page 316) in the "Avoiding calls to library routines" paragraph, the text that reads <quote> When your code refers to a member of a BASED structure with REFER, the compiler often has to generate one or more calls to a library routine to map the structure at run time. These calls can be expensive, and so when the compiler makes these calls, it will issue a message so that you can locate these potential hot-spots in your code. If you do have code that uses BASED structures with REFER, which the compiler flags with this message, you might get better performance by passing the structure to a subroutine that declares a corresponding structure with * extents. This will cause the structure to be mapped once at the CALL statement, but there will no further remappings when it is accessed in the called subroutine. </quote> is almost a literal copy of text in an email I sent to IBM's Peter Elderon close to 30 years ago, and if you use PL/I to build linked lists, and/or trees using BASED storage, I'd suggest you think about the second (area-reference) parameter of the ALLOC builtin function, and the NEXTALLOC builtin, both are the result of my RFEs, and combining them with the EMPTY builtin, well think about it. ;) ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN