Whatfor

Not really sure if that is how you spell it. I only ever heard it.

There were a bunch of people, all the freshmen, learning Fortran. We had to run a bunch every day. Normally you built for Fortran environment, compiled the program, built the link environment, linked the program, butlt the run environment, and ran the program. All the building took a lot of time, especially when compared to the run time of simple programs, if there were no errors in the compile. We had Whatfor, from whitewater university, that built the environment and then ran the programs one after another.

The first fun thing was getting the decks in and out of the computer. The end of each deck was a card that had the upper left corner as opposed to all others that had the upper left corner cut. So, if you had a bunch of programs each would be separated by a blue, oh yeah the end card was blue, card. You got a tray with a bunch of these programs, each with a rubber band holding them together. You picked on of these decks slipped off the rubber band stuck it in another tray. The rubber band was now around your left hand, not including the thumb. Read all the stuff into the computer. Grab one of the decks, you could pick out the end by the blue card. Pick up one of the rubber bands with your thumb, swipe the deck down and grab the band, twist the deck once, grab the band again, let the band slip off your hand. You now have a deck with a band wrapped around it twice. It only took a couple of seconds from the first tray to a deck wrapped and in the second tray.

Whatfor had some limitations. I think the size of the program was limited. A normal print line used the first character to control how the carrage moved. You could skip to the top of a page, print a line and advance, or print a line and don’t advance. The users discovered that if you print an entire line of _, do not advance, print another line of _, eventually you will cut through the paper and you can laugh at the operators. They changed print and don’t advance to print and advance to sop this shit.

One limitation of whatfor was that you could only print 12 pages. Then the scum discovered that if thy did a print don’t advance it did advance, but it did not count the line. Unlimited pages for all. They fixed that.

Error messages for the compile did not count toward the 12 pages. You could define an array of integers and set it equal to 1.1. This would generate an error message for each cell. Half a box of error messages for a compile. They fixed that.

Whatfor got run every couple of hours. It didn’t take long so every couple of hours we got all the whatfor jobs and ran them. On a busy day a normal job might take all day. You put your deck in in the morning and didn’t get it back until late. If you could make your job look like what for you could put in JCL to stop the whatfor, run you program, and start up the whatfor again. Lets change whatfor to not end the batch until you got a card that matched the first one. So you put a card with 4 x00 at the start and whatfor would eat all the cards until another 4 x00. If they figured it out you could just change the start/end card.