All, after all have lamented the retirement of Jonathan, I will refrain from repeating.
Instead I'll share a trick I learned from Jonathan. It's not a secret, it just seems not many people happen to know... I asked his advice how to AREAD data from a member that should be brought in using a COPY statement. Issuing an AINSERT for the COPY statement and then going to do the AREAD will simply feed the COPY statement into the AREAD, instead of expanding the COPY member and feeding it's data into AREAD. Jonathan showed me how to use lookahead mode to force expansion of the COPY statement before starting to AREAD. Here's how: 1. AINSERT a valid statement with a specific label. EQU or DS are fine. 2. AINSERT the COPY statement with whatever member your program or macro decides it needs. 3. AINSERT an invocation of the macro that will AREAD the data; pass the generated label used in step 1 as an argument. The magic happens inside the macro that AREADs the data. It starts by referencing some attribute of the generated label. This forces HLASM into lookahead mode and it will cause expansion of the COPY statement. Then the macro goes on to execute its AREAD loop. It will terminate when the label that was passed as argument is detected. Wishing well to all the former colleagues on the team! And wishing you all happy programming :-) Kind regards, Abe Kornelis. P.S.: If you're using z390 and your code needs not be compatible with HLASM, then you won't need the above. In z390 you can use directed AREAD to read any file you want :-) Cheers! Abe === Op 05/02/2025 om 21:31 schreef Jonathan Scott: > Today, 5th February 2025, was my last day with IBM, where I was HLASM and > Toolkit Development and Support Team Leader. > > > > I’ve been working in Assembler for over 51 years, since January 1974 (when I > was a pre-university student with IBM). After working with Altergo Software > in London and then at the Gothenburg Universities Computing centre (GUC) in > Sweden (also known in Swedish as Göteborgs Datacentral, GD), I returned to > IBM in September 1987, where I’ve been for over 37 years, working on CICS, > MQ and (among other things) HLASM, programming in Assembler and IBM’s PL/X, > and writing tools using REXX and CMS/TSO Pipelines. I also had the > privilege of working with Dr John Ehrman in various discussions about HLASM > design and later helping him to support legacy products such as the VS > Fortran compiler, while he was putting together his Assembler text. > > > > I was appointed as HLASM team leader in June 2017, and as an advanced user > of Assembler, I was pleased to be able to implement various HLASM > enhancements, including: > > > > * Enhancements to AINSERT and lookahead to improve the usability of > AINSERT and support the use of sequence symbols in the inserted code > * Capability to generate ELF64 for Linux, optionally via GOFF (to > support long external names) > * Capability to execute the assembler natively under 64-bit Linux > * USING addressability limits which apply both to short and long > displacements > * DROP by address, which can drop a dependent USING > * Negative decimal self-defining terms > * ASCII and Unicode self-defining terms > * Flexible code page support, with control of EBCDIC to ASCII > conversion and UTF-8 constants, for example for EBCDIC accented characters > > > > I expect those who follow this list can think of some other things we have > fixed or improved over the years, often in response to excellent suggestions > on this list! > > > > I’m now looking forward to having more time to play instrumental music > (piano, violin and viola) and resume my long-interrupted study of > theoretical physics. However, I’m still interested in assembler and I > intend to continue to follow this list and respond when I can, although I no > longer have access to any IBM internal resources so I can’t test my guesses > before replying as I have done in the past. > > > > The IBM HLASM and Toolkit team is now being led by Ramesh Padmanabha (in > Canada – this is a somewhat geographically dispersed team), who also follows > this list (as do various other IBMers). They still have a long list of > requirements and suggestions, many of which have already been at least > partly prototyped, so I hope to see further useful enhancements in the > future. > > > > Jonathan Scott > > (near Hursley, UK) > > > > > >