| STANFORD UNIVERSITY MEDICAL CENTER Rh STANFORD, CALIFORNIA 94305 ¢ (415) 321-1200 January 23, 1974 STANFORD UNIVERSITY SCHOOL OF MEDICINE Department of Genetics Dr. Paul B. Schneck National Aeronautics and Space Administration Institute for Space Studies 2880 Broadway New York, New York 10025 Dear Dr. Schneck, Thank you for your letter of January 17th and for sending me the reprint of your paper on the Fortran Optimising Compiler. I will be discussing this with my colleagues with respect to determining the approriate time to attempt to implement your system, and I very much appreciate your offer of cooperation. I may find that there are some similar activities of which I was not previously aware that would be easier to maintain in the local environment. But if I find them I will certainly pass that back onto you. It strikes me that innovations of this kind would be particularly useful for exchange on the ARPA-net communication network. Do you know 1f your institute is now or is going to be affiliated with it? I am enclosing a brief blurb about some role that we may be playing, which may be a counter example to Fortran, and will send you some additional remarks in a few days when we have gotten them together. I found the general ideas in your paper most intriguing. What you only hint at, but I am sure have given much thought to, is the impact that having this additional stage of language translation would have on programming practices. If one could be reasonably confident that all of these dreary details were going to be taken care of later on, I am sure that we would write many programs much more briskly and with more attention to the basic flow of the logic rather than fussing about optimum flow. So the fair comparison to evaluate your proposals is not as between present programs and their optimized versions but the kind of programs that would be most efficiently written at the highest source level if these facilities were generally available and perfected. I understand and sympathize with the objectives of using standard programing texts as input but I am sure you will also have given some thought to a higher level translator that was subject to some explicit “control. Otherwise one will be finding the use of side-effect tricks in order to confuse the optimizing compiler from performing treacherous re- coding of sections that are intended to be left as is and where we do not want to bother to edit the output text. One could think of constructions like listing the names of functions that are intended to produce constants whose values are to be obtained once but not evaluated again. There are bound to be circumstances where this advantage is not foreseen by the compiler. LT. J. P. KENNEDY, JR. LABORATORIES FOR MOLECULAR MEDICINE, DEDICATED TO RESEARCH IN MENTAL RETARDATION MOLECULAR BIOLOGY HEREDITY NEUROBIOLOGY DEVELOPMENTAL MEDICINE wy gaP oar Dr. Paul B. Schneck -2- 1/23/74 More generally, a point of perhaps dubious value: in the days when I was more intrigued by bit-pushing, I often hoped for the equivalent of a macro-expression expander in higher level languages. There are some programs where the housekeeping overhead connected with procedure calls takes up a significant proportion of the execution time of an inner loop but where the programmer just does not want to bother to rewrite the procedure body with new arguments. Programs are certainly best documented and tested with conventional procedure calls but again one could see the advantage of being able to list those procedure blocks which are intended to be explicitly expanded in the optimized version. This concept made less sense in the days when assembly level programing was more reasonable than it is on many of today's machines, so there may be some new virtue to it. I do foresee that one of the very great virtues of your approach is in the field of self-documentation since it will now be possible in many instances to define the values of variables at a point that corresponds to their logical connotation rather than to their optimal position from the standpoint of program flow) So, I will write you again when I have some further advice about the best time to take advantage of your offer to provide tape copies of your program. This deferral is based on the idea that you may be continuing to perfect it. If the converse is true and there is some hazard of its or your going away, please let me know. Sincerely yours, Joshua Lederberg ., . Professor of Genetics JL/rr