The Research Branch of the Department of Agriculture maintained a Research Station at Lethbridge, Alberta for research on problems peculiar to the Great Plains area in Canada. While I was with the Statistical Research Service the Lethbridge Station began to use the Stantec Zebra computer at the Defence Research Station at Suffield, Alberta which is about 130 miles east of Lethbridge. This work was encouraged by the enthusiasm and hard work of the Director at Lethbridge, Dr. Thomas H. Anstey, who on occasion would write programs for members of his staff. I had the good fortune to become involved in this work, and my associations with Tom Anstey were amongst the most pleasant of all my work in Ottawa. I still look back on it with very great pleasure. Fortunately a short account of this work was published.
The Stantec Zebra was manufactured by the Standard Telephones and Cables Limited at its Information Processing Division in Monmouthshire, Wales and was marketed in Canada by the company's Montreal offices. The computer cabinet was 6.5 feet by 5.5 feet by 2 feet; there was also a console for the operator. There was a drum memory with a capacity of 8192 33-bit words. Basic input and output was paper tape with optional punched card, high-speed paper tape and magnetic tape input and output. Addition and subtraction times were given as 312 microseconds, and multiplication times were 11 and 35 milliseconds, respectively. There were two accumulator registers and fourteen other registers.
The logical design of the Stantec Zebra is described concisely in Computer Structures: Readings and Examples. A doctoral thesis from the University of Amsterdam gives a detailed discussion of the Stantec Zebra and similar computers. Further information on the Stantec Zebra may be found here.
Programming in machine language, called Normal Code, was extremely complicated as indicated by the following paragraph taken from a descriptive brochure:
The structure of the Normal (machine) Code is based on a novel idea. Single letters specify basic operations such as add, test, store; but there are 15 such letters (called function digits) and these may be used in any combination so that the programmer may construct thousands of different instructions. It is possible to instruct the machine to add, transfer, shift, modify and test "all at the same time", thus making the effective speed of operation of the computer greater than the intrinsic electronic speed would suggest.If the above description of Normal Code was not sufficient to discourage a prospective programmer, a look at some "typical" instructions certainly would. The following example is representative:
X1856LBC3 Take your next instruction from main store location 1856. Left shift the A accumulator. (Here, although the L digit indicates a shift of both accumulators, the BC digits indicate that the B accumulator is to be cleared. However, as register 3 is equivalent to the B accumulator, the unshifted contents of the B accumulator are replaced after shifting and clearing has taken place.)Theoretically there was a total of 2 to the power of 15 or 32768 of these instructions. Fortunately there was Simple Code.
Simple Code, described in Ord-Smith (1960), was a interpretive language using floating-point arithmetic and had facilities for relative addressing and automatic counting in loops. The memory consisted of an instruction store and a number store each consisting of 1490 locations, although numbers could be stored in the instruction store and instructions in the number store. There was an accumulator register, an accumulative multiplicative register, and six special registers for counting and order modification. Simple Code was described in a brochure as being the "simplest available to any British computer". Even so, it was unlike any other programming language I have ever used.
The following Simple Code instructions were used in the Simple Code program for the sample problem:
An A <- (A) + (n)
Sn A <- (A) - (n)
Hn A <- (n)
Un n <- (A)
Tn n <- (A); A <- 0
Ep If (A) > 0, trans. to Qp
Xp Trans. to Qp
Ln Input one number to n
Z30 Set format
Z31 Print (A)
We might note that the Simple Code program has not been debugged so possibly (or probably!) contains errors.
T K+1Y Constant of 1 T2 N <- 0 T3 Sum <- 0 T4 Max <- 0 Q1 L1 Read Price T S1 E2 Is Price > 0? H2 A1. U2 N <- N + 1 H3 A1 U3 Sum <- Sum + Price H4 S1 E1 Is Max < Price? H1 U4 Max <- Price X1 Trans. to Q1 Q2 +004 +000 Z30 Set format H2 Z31 Print N +006 +002 Z30 Set format H3 Z31 Print Sum H4 Z31 Print Max Z Halt
|Stantec Zebra Simple Code|
There were only two models of the Stantec Zebra in Canada, the one at Suffield and the other at the Company's offices in Montreal. Stantec's computing operations in Canada came to an abrupt end when there was a short circuit in the transformer in the Montreal computer. The Stantec Zebra at Suffield was eventually replaced by an IBM 1130. When the Zebra at Suffield was decommissioned, Tom Anstey wanted to arrange a wake. Unfortunately no one was interested.
One problem which I can remember working on was for calculations involved in what are called uniformity trials for the determination of optimum plot size and shape. A paper was published on the results of this work in the Canadian Journal of Plant Science with me as the second author. I contributed the Appendix which included the flow diagram shown here with the comment that it was intended to be "sufficiently general so that it may be used in preparing the program in any other programming system for other computers", a statement which I find now to be both embarrassing and amusing. My present belief is that flow diagrams are a reflection of the inadequacy of many computer languages to represent algorithms. Indeed since using the array languages to be discussed towards the end of the paper I cannot recall ever having prepared a flow diagram.
After I had written the above account of my work at Lethbridge, I came across the paper To Serve Agriculture. The Lethbridge research Station 1906-1976. Chapter 12, The Sixties, contains an interesting account of computer use at Lethbridge from which the following is taken:
One of Dr. Anstey's most important contributions came soon after amalgamation [of the Experimental Farms Service and Science Service into the Research Station, Lethbridge with Tom Anstey as Director]. He took the Lethbridge Research Station from dependence on mechanical calculators into the computer age.
In 1960, before he resigned, Dr. Perkins played a part in this advance. He was in touch with a chemist at the Department of National Defence's Suffield Experimental Station at Ralston, Alta., and on one of his visits there he was shown the Stantec Zebra digital computer, then in use at that Station. He conceived the idea that it might be possible for the Research Station to use the Suffield computer for analysis of experimental data. Dr. Perkins returned to Lethbridge and discussed these findings and ideas with Dr. Anstey.
Dr. Anstey visited Suffield and met the Chief Superintendent, A. M. Pennie. Dr. Anstey found that there was considerable free time available on the computer, and Mr. Pennie asked for an example of the type of work that would be required. At the time, Dr. I. L. Nonnecke, head of the Horticulture Section, had data from a series of vegetable uniformity trials that he wanted to have analyzed. Programmers at Suffield spent nearly 2 weeks in transferring the data onto tapes. Then the tapes were run through the computer and, in a few minutes, Dr. Nonnecke had the results. After this demonstration, Dr. Anstey, Dr. S. A. Wells, and Mr. A. L. Lagler went to Suffield and took a course in the use of the Zebra computer. In turn, they taught others how to use the machine.
At Lethbridge, a teletype-keypunch machine was installed in an office in the Biology Building. Mr. Lagler acted as keypunch operator and did whatever typing and editing were necessary in connection with submitted data. He took the completed material to Suffield and ran it on the computer, always after 5:00 p.m. Data were returned to Lethbridge in tape form and were put through the teletype machine so that printouts could be obtained.
The Suffield Experimental Station changed from the Stantec Zebra to an IBM 1130 computer in 1966. The latter used punched cards instead of tape, but a tape-reading facility was available to help in the transition from one computer to the other.
The services of a Univac 1108 computer were rented from a Calgary firm by the Station in 1971. A computer terminal and keypunch machine were set up at Lethbridge on the second floor of the old horse barn, built in 1931 but more recently used as the Forage Crops Laboratory.
I was very pleased to see the contributions of Alf Lagler acknowledged. I worked quite closely with Alf on my visits to Lethbridge and Suffied and was grateful to him for his valuable assistance at all times.