http://invisible-island.net/personal/
Copyright © 2014,2019 by Thomas E. Dickey


Henry J. Bowlden

Henry Bowlden was the computing expert in the research center where I worked for several years in the late 1970s/early 1980s.

My initial contact in the computer center, Jim Koos, suggested to some question of mine that Henry should know the answer. Henry usually did know the answer, providing helpful insights:

Not all of our interaction was question/answer. His comments about a directory editor on the University of Maryland tape, and DPS were just shop talk.

I can easily find references to him:


We did not eat lunch together (unlike Jim Vine). Henry ate at his desk.


Henry did not always know the answer. I found an interesting problem which snared both of us.

The Univac 1108 Programmer's Reference in chapter 5 describes these interesting job-control features (actually the original is all UPPERCASE, but hard to read):

5.4.6. The @ADD statement
The @ADD control statement provides a means of inserting images into the control stream from any file in the system data format. These files may contain data or any control cards allowed in a run stream. The file being added may have been created by the @DATA statement, the @FILE statement, the @ELT statement or a user program. The images in the file being added need not exist until the @ADD command is executed, This means that the user is free to have worker programs in the first part of a run generate files to be added later in the run.

The format of the @ADD control statement is

@ADD FILENAME . COMMENTS

where 'FILENAME' may be the external name of the file if an entire file is to be added, or it may be replaced by the standard reference to an element 'program file, element/version(cycle)'. When the @ADD control statement is encountered in a control stream, the first image of the added file replaces the @ADD control image. All subsequent control stream images will be taken from the added file until the end of file or if an element is being added, until the end of the element is encountered, following the end of the added file, the control stream is automatically resumed at the image following the @ADD statement.

@ADD statements may be nested to any level provided there is no attempt to add a given file (or element) twice in the same nest. When this occurs, or when a non-existent file is specified, the run is placed in the error mode and processing continues.

5.5.6. The @ELT statement

The @ELT control statement introduces an element into a particular program-file from the control stream. It may also be used to make corrections to a source element in a program-file. The element or the corrections follow the @ELT statement in the control stream.

(a few pages of details omitted)

Rather than carry around a large deck of punchcards, I used the @ELT job control feature for creating and modifying sets of data on the Univac's disk, and @ADD for inserting those into the job which I submitted on a few punchcards. In some cases, I built up sets of data by using @ADD in the data elements.

Usually that worked well, except for one day when I got back my batch printout after an unusual delay, with a frown from Bill the operator. The printout was missing the information I was expecting.

I went down the hall to talk about it with Henry. At some point, I realized the problem: in my set of @ELT elements, I had an @ADD which added one of the outer levels of the nest. I mentioned this to Henry, showing that the documentation said it was supposed to reject the run at that point, and that (apparently) the check did not work if there was more than one level between the @ADD and added-elements.

Henry did not think that was correct, so we went back to the batch room to enter a new job to prove whether that was correct.

After another lengthy delay, we got back the results, Bill frowning even more. The result of the failed jobs was that the Univac did nothing else for a while except run in an infinite loop, until Bill stopped it. Around that time, the computer center manager came in, asking what was going on. It was a little awkward, but Henry explained it better than I would.