|
� |
Farewell to Grace HopperEnd of an Era! by Jean E. Sammet Communications of the ACM April 1992 � � On January 1, 1992 an era in the computer field ended with the death of Admiral/Dr. Grace Murray Hopper. She saw the beginning of the computer field with her work on MARK Ia physically large electro-mechanical machineand lived to see and influence people who could carry around small electronic computers with a capability many many orders of magnitude greater. Grace Hoppers lifework epitomized the development of the software field from primitive programs to sophisticated compilers and their verification. This is a combined biography, obituary and commentary on the person I personally consider to have been the greatest woman in the computer field and one of the dozen top people in the field to date. In addition to standard biographical material that is in the next section, I have tried to provide additional sections to indicate what I consider her major technical contributions to the computer field, her involvement with ACM, and some additional material as well. Basic Biographical Information Long before Grace Hoppers death and certainly since then, numerous interviews and biographies have been published. In order to make this article complete, the basic biographical information is as follows. More details are available in other resources. Grace Murray was born on December 17, 1906. She attended Vassar College where she received a B.A. in mathematics and physics in 1928. She earned an M.A. (1930) and a Ph.D.(1934) from Yale University. She taught mathematics at Vassar from 1933 to 1943. At that time she volunteered to join the U.S. Naval Reserve and attended Midshipmans School from December 1943 until July 1944 when she received a commission as Lieutenant, junior grade. She was assigned to the Bureau of Ordnances computation project at Harvard University where she served under Howard Aiken and worked initially on the Mark I. The Harvard Mark Ialso known as the IBM Automatic Sequence Controlled Calculator (ASCC)was the first automatically sequenced digital computer, albeit electro-mechanical rather than electronic. She often indicated her wish to be introduced (only) as the "third programmer on the first large-scale digital computer." In 1930 she married Vincent Foster Hopper and they were divorced in 1945. She did not have any children. Harvard and Remington Rand In 1946 Grace joined the Harvard Faculty as a research fellow in engineering sciences and applied physics at the Computation Laboratory. There she worked on the Mark II and Mark III computers for the Navy. In 1949 she joined the Ekert_Mauchly Computer Corporation as a senior mathematician; that fledgling company was involved with the building of the first UNIVAC. She remained with that company and its successors (ie., Remington Rand, Sperry Rand) until her retirement from them in 1971. She held several technical and management positions there, including Director of Programming Research, and Director of' Automatic Programming Development until 1964, when she became Staff Scientist until her retirement in 1971. Navy Service and After Grace Hopper was mustered out of the Navy in 1946 after the war because she was too old (at 40) for permanent retention, but remained in the Naval Reserve until December 31, 1966 when the Navy retired her from even that position because of age/service regulations. That retirement did not last long, and in August 1967 she was recalled to active duty for six months to lead Navy efforts to standardize COBOL for the Navy, and left UNIVAC on a special military leave of absence. (The six months was extended for almost 20 years!) She was promoted to Captain in 1973, and then to Commodore in 1983. (That rank was later renamed as Rear Admiral in 1985.) Because of her age, Congress had to pass an annual law permitting her to stay on active duty. She received her promotion to Commodore from President Reagan in his office. She retired for the last time from the Navy on August 14, 1986 with services held aboard the U.S.S. Constitution the oldest commissioned officer on active duty aboard the oldest commissioned warship. Right after her retirement, she promptly went to work as a senior consultant at Digital Equipment Corporation, and was an active participant there for several years (at an age well into her 80s). Teaching She was an adjunct professor, and,. taught miscellaneous courses in computing, for several universities, and for the military. Numerous Honors Grace loved her activities in the Navy. She received numerous awards and honors, but usually ended her general talks and acceptance of award presentations with a remark something like the following "I have already received the highest possible award, the privilege and responsibility of serving in the United States Navy." In spite of her view, any biography would be incomplete without an indication of some of the honors she received: Fellow of the IEEE (1962), Fellow of the AAAS (1962), first DPMA "Man-of-the Year" award (1969), AFIPS Harry Goode award (1970), elected Member National Academy of Engineering (1973), Distinguished Fellow of the British Computer Society (1973), IEEE Computer Science McDowell award (1979), induction into the Engineering & Science Hall of Fame (1984), IEEE Pioneer award (1988), National Medal of Technology (1991), and was the third of nine recipients of a DAR medal to women "worthy of honor" (posthumously, but known to her before her death). She also received approximately 40 honorary degrees, and numerous Navy/DoD medals, including the DoD Distinguished Service Medal. What appears to be a complete list of honors and awards is in the back of the book Grace Hopper, Navy Admiral and Computer Pioneer by Charlene W. Billings, Enslow Publishers, Inc., Hillside, N.J. (1989)--this book also includes a lot of information about her early personal life. Technical Contributions Early Work Grace made numerous contributions to the computer field that will be described below, but if I had to sum them up in a single sentence, I would still use the one I wrote in my 1969 book PROGRAMMING LANGUAGES: History and Fundamentals: " In my opinion, Dr. Grace Hopper probably did as much as any other single person to sell many of these concepts from an administrative and management, as well as a technical, point of view." In that context I was referring to the early concepts of software development, including but not limited to programming languages. It is hard to realize now-when software is clearly the dominant factor in achieving practical results on a computer-how difficult it was in the early years of Grace's career to convince managers and other workers in the computer field to pay much attention to software in general and programming languages in particular. Grace's first real computing publication was based on her initial work on the Harvard MARK I and was "A Manual of Operation for the Automatic Sequence Controlled Calculator," Annals of the Harvard Computation Laboratory, Volume 1, Harvard University Press (1946). Her first significant paper dealing with software "The Education of a Computer" was presented in 1952 at one of the very early ACM conferences. It was reprinted in the Annals of the History of Computing, Vol. 9, No. 3/4, (1988). In it she presented many ideas that are so commonplace today that some are taught in high school, but they were semi-revolutionary at that time! Included among the suggestions she made were compilation, subroutine libraries, relative addressing, and symbolic differentiation. (Some of these ideas particularly in the area of' subroutines had already been suggested by other workers in the field.) In May 1953 her paper "Compiling Routines" appeared in Computers and Automation, Vol. 2, No. 4 (May, 1953) and described some of the fundamental ideas of compiling, as contrasted with interpretation, which was more widespread at that early time. The paper "Influence of Programming Techniques on the Design Of Computers" that she coauthored with John W. Mauchly, appeared in Proceedings of IRE, Vol. 4 1, No. 10 (October 1953) and was one of the first to specify anything about A-0, which was the first compiler and initially ran in 1952. Although incredibly primitive by today's standards, the compiling process introduced in A-0 nevertheless represented a scientific breakthrough. These seminal papers were followed by another widely circulated paper entitled "Automatic Coding for Digital (computers" that was based on a talk she gave in February 1955 at the High Speed Computer Conference at Louisiana State University. This paper described the life cycle of' software development, emphasized subroutine usage, and again mentioned A-0. By the time that paper appeared, the A-2 compiler was actually in use (and it was as a user of that system that I first met her). In today's terminology, A-2 was merely a simulated 3-address machine with some mathematical functions, but it was powerful deed compared to machine code (since UNIVAC did not have a symbolic assembler at that time). Within a year or two they had extended A-2 to A-3, and had a preliminary version of AT-3. ( The marketing department of Remington Rand UNIVAC renamed A-3 and AT-3 as ARITH-MATIC and MATH-MATIC respectively-presumably to make them more attractive to potential users.) MATH-MATIC was developed around the same time as Fortran and had about the same functional capability-except that the MATH-MATIC compiler had one very important overlay/paging facility that was not replicated in any compiler until much later. Also in the mathematical area, Grace provided guidance to Harry G. Kahrimanian who used UNIVAC I to write one of the first two programs to do formal differentiation on a computer. His 1953 M.A. thesis at Temple University, Philadelphia, was entitled "Analytical Differentiation by a Digital Computer FLOW-MATIC and COBOL In my view, the most significant technical contribution Grace made was the concept of FLOW-MATIC (originally called B-0), and the leadership of its design and implementation. In attempting to develop a language suitable for business data processing, she realized that although mathematics had a relatively common vocabulary and abbreviations (e.g., sin, cos, x + y), there was no similar common terminology for data processing. Thus, she said-in several informal papers and articles-that full English words should be used for data names (e.g., UNIT-PRICE, DISCOUNT, INVENTORY) and commands (e.g., COUNT, DIVIDE, REPLACE). Furthermore, although mathematical problems could generally be stated and solved using only fixed and floating point data representation, data processing problems required a system that permitted the description of user-defined data types. FLOW-MATIC development started in 1955, and manuals and a system were generally available by 1958. It was used for practical work by several companies, including the Metropolitan Life Insurance Company. People from Met Life reported on the work at the Automatic Coding Symposium held January 1957 at the Franklin Institute in Philadelphia. (The publication resulting from that symposium was Automatic Coding, Monograph No. 3, journal of the Franklin Institute, Philadelphia, Pa. (April 1957).) Grace Hopper's role in COBOL has been generally misunderstood, I would like to take this opportunity to correct the incorrect statements and impressions that have consistently been conveyed in almost all articles and books, and even by a misleading Navy commendation. These comments are based on the original COBOL records from 1959 which I still have, and are reported in detail in my paper "The Early History of COBOL" (in Wexeblat, History of Programming Languages, 1981). A draft of that paper was sent to many people-including Grace for comments, and she generally agreed with what I said. Grace was one of a group of six people who met in April 1959 and decided to suggest to Charles Phillips in the Department of Defense that he convene a meeting to consider the development of specifications for a common business language. She attended the meeting called by Phillips in May 1959, along with approximately 40 other people, including myself, from business, government, and academia. That meeting established the CODASYL., Executive Committee and the Short Range Committee, as well as other committees. Grace was one of two technical advisers to the self-appointed Executive Committee (the other being Robert Bemer from IBM.) Under the aegis of, and with minimal guidance from, the Executive Committee, the Short Range Committee defined the specifications of COBOL by December. 1959. There were initially nine members (including myself), and eventually over 25 people participated in some phase of the basic COBOL language design; this large group included two people who worked for Grace, but Grace herself was not a member of the committee that defined COBOL. She did not participate in its work except through the general guidance she gave to her staff who were direct committee members. Thus, while her indirect influence was very important, regrettably the frequently repeated statements that "Grace Hopper developed COBOL" or "Grace Hopper was a codeveloper of COBOL," or "Grace Hopper is the mother of COBOL" are just not correct. Grace's primary contribution to COBOL was indirect, and via FLOW-MATIC. It was the only business-oriented programming language in use at the time the COBOL development started aside from AIMACO which was a dialect of FLOW-MATIC. Without that existing practical use of FLOW-MATIC I doubt that we would have had the courage to develop a language such as COBOL. (The other significant input to the early COBOL work was Commercial Translator which was a set of specifications from IBM but it had not yet been implemented.) Thus, in my view, without FLOW-MATIC we probably never would have had a COBOL. The practical experience of implementing and rising that type of language was priceless. This is a major contrast with the mathematical area in which there had been many small attempts at a high-level language, going back as early as 1952. Grace spent a lot of time convincing managers in various companies of the feasibility of MATHMATIC, FLOW-MATIC, COBOL and other high-level languages at a time when this was a unique and generally uncomfortable concept. She led her own group in the very practical "race" with RCA to produce the first COBOL. compiler and demonstrate machine independence. Both companies demonstrated their successful results in December 1960. Navy Validation Activity Grace's involvement with the Navy continued through most of her adult life (as described above). In 1967 she returned to "temporary" active duty to standardize COBOL, for the Navy. Her major contribution in this area--and which had far-flung impact outside the Navy was leading the development of the programs and procedures for validating COBOL compilers. This validation concept eventually spread to other languages and other organizations. Today, most programming languages which have a defined American or International standard have a validation facility somewhere. Numerous Lectures It would be inappropriate to omit from any listing of her technical contributions the numerous talks Grace gave to people of all ages and from all types of organizations (industry, academic and government both civilian and military). She also taught courses at various universities. However, she most liked to talk to young people, and certainly was an inspiration to them. Many people were probably inspired by Grace to enter the computer field. Grace Hoppers Involvement With ACM Graces involvement with ACM started early in ACM's existence, when she served as a member of the ACM Committee on Nomenclature 1952-1056. She was the Chairman of that committee when it issued its report "First Glossary of' Programming Terminology" in June -1954. Included were definitions of terms such as compiler, random access, flow chart, and automatic coding. Grace served as an ACM Council member (1957-1958), and a member of the Communications Editorial Board (1957-1958). That was probably the group which helped define and start the ACM Communications, which started in January 1958. She definitely served as its first Standards Department editor. She held various other ACM positions, and was one of the most popular speakers in the ACM lectureship program. Probably Grace's best known relationship to ACM is via the award that was established in her name in 1971 by the UNIVAC Division of' the Sperry Rand Corporation and is administered by ACM. The Grace Murray Hopper Award is "Awarded to the outstanding young computer professional of the year, selected on the basis of a single recent major technical or service contribution. A prize of $5,000 is supplied by Unisys. The candidate must have been 30 years of age or less at the time the qualifying contribution was made." Famous Stories Anyone who ever had contact with Grace Hopper knows at least one of the following stories about her: the alleged "first bug," the clock in her office that ran backward, her saying that it is better to take action first and apologize afterward, her hatred of the saying "we've always done it this way," being mistaken in her uniform for a stewardess or security guard, and her distribution of "nanoseconds"-pieces of wire which represent the distance that light travels in a nanosecond. Space does not permit a detailed description of these and many other stories but most of them appear in various interviews and biographies which have been published over many years. She was one of the few professional computer people to be interviewed on the television program 60 Minutes, which occurred in 1983. She told some of the stories mentioned above during that interview with Harry Reasoner. Her segment was actually one of those repeated in a later show in 1986. Final Ending Grace chose to be buried at Arlington Cemetery with a full Navy funeral, which I attended both as a personal friend and colleague, and also as the ACM representative. The service was held in the Fort Meyer chapel. Unfortunately it did not receive much publicity in the Washington area, and so I believe relatively few computer people attended. However, it was fascinating to notice the large group of Navy women who attended--quite logically. (They did not come as a group, but were easy to identify). Following the chapel service was the procession to the gravesite as most people have seen on television-horse-drawn flag-draped caisson, followed by cars as well as people walking. The service at the gravesite included ruffles and flourishes, a rifle volley, the playing of taps, removal of the flag from the coffin. A wreath had been sent on behalf of ACM and was one of only two at the gravesite. It was a very moving experience for me personally, and certainly Grace's burial represented the end of an era in the Computer Field. � � |