Oral-History:David Gries

From GHN

(New page: == About David Gries == A native of New York, David Gries received his BS from Queens College (1960), his MS from Illinois (1963), and his doctorate from the Munich Institute of Technolog...)

About David Gries

A native of New York, David Gries received his BS from Queens College (1960), his MS from Illinois (1963), and his doctorate from the Munich Institute of Technology (1966), all in mathematics. He spent 1966-1969 as an assistant professor of CS at Stanford and has been in CS at Cornell since 1969, serving as department chair in 1982-87. He was a Guggenheim Fellow in 1984-85 and became the William L. Lewis Professor of Engineering in 1992. Gries is known for his research in compiling and in programming methodology and for his books, Compiler Construction for Digital Computers (1971), An Introduction to Programming, a Structured Approach (1973, with Dick Conway), The Science of Programming (1981), and A Logical Approach to Discrete Math (1993, with F.B. Schneider). His main goal has been to advance significantly the teaching of CS.

The interview concentrates on NSF funding and the value the Center for Experimental Research (CER) has had for Gries' work. He briefly describes other sources of funding and emphasizes the importance of funding individual researchers, as opposed to just centers. He ends the interview with a promise to describe his research in more detail via e-mail.

About the Interview

DAVID GRIES: An Interview Conducted by Andrew Goldstein, Center for the History of Electrical Engineering, August 8, 1991

Interview #129 for the IEEE History Center, The Institute of Electrical and Electronics Engineers, Inc. and Rutgers, The State University of New Jersey

Copyright Statement

This manuscript is being made available for research purposes only. All literary rights in the manuscript, including the right to publish, are reserved to the IEEE History Center. No part of the manuscript may be quoted for publication without the written permission of the Director of IEEE History Center.

Request for permission to quote for publication should be addressed to the IEEE History Center Oral History Program, Rutgers - the State University, 39 Union Street, New Brunswick, NJ 08901-8538 USA. It should include identification of the specific passages to be quoted, anticipated use of the passages, and identification of the user.

It is recommended that this oral history be cited as follows:

David Gries, an oral history conducted in 1991 by Andrew Goldstein, IEEE History Center, Rutgers University, New Brunswick, NJ, USA.

Interview

INTERVIEW: David GriesINTERVIEWER: William AsprayDATE: August 8, 1991PLACE: Telephone Interview

Importance of CER Program

Aspray:

The e-mail message you sent to Andy Goldstein articulated most of the things that we wanted to find out. I really would just like to ask you a few questions about your message.

Gries:

Okay.

Aspray:

So it may not take more than just a few minutes.

Gries:

Right.

Aspray:

You say in your message that you wanted to emphasize the importance of the CER (Center for Experimental Research) program to what happened at Cornell.

Gries:

Yes.

Aspray:

Could you tell me a bit more about that? I have always thought of Cornell as traditionally being a theory oriented place. Did it make a difference?

Gries:

Yes. Cornell in the 1970s was theory oriented. That does not mean that there was no experimentation going on. The PLC compiler was built here. Also, there was a lot of work in information organization and retrieving going on. So there was experimental work, but the emphasis was on theory first. In 1978 or 1979 we got our first PDP-11. And that began Tim Teitelbaum’s move into the Program synthesizer generator. Also, we got our CER grant, and we immediately began getting computers. Now our department has over 200 workstations and computers. It is a nice blend of theory and experimentation.

Aspray:

There just were not funds available before the CER program to buy that kind of equipment?

Gries:

Not at all.

Extent of DARPA Funding

Aspray:

What about from a place like the Defense Advanced Research Projects Agency? What was Cornell’s position with respect to the DARPA?

Gries:

We had no DARPA funding in those days.

Aspray:

Why was that, if I may ask?

Gries:

Yes, you may. You can ask anything.

Aspray:

Okay.

Gries:

I do not know. Being a theory place, we just normally went to the National Science Foundation. It was easier. We do have DARPA funding now. It is a better mix of things. I guess in about 1983 or 1984 we started thinking about the DARPA and slowly people got the DARPA funding. I have DARPA funding. Ken Birman does, and John Hopcroft does. So at least three people.

CER Proposal Process

Aspray:

As I understand the way the CER program was first set up, there was supposed to be a definition of certain research areas that might be team oriented, and also experimental in nature. Were there particular areas that Cornell had proposed to work in?

Gries:

Our first proposal had the title “Programming Methodology.” Essentially, we could place almost every single person in the department under that title, under programming say. So there was me doing the real methodology stuff; there were people like Hopcroft doing algorithms; there were other people doing compilers; there was Teitelbaum working on his synthesizer generator. There were people working on correctness. Everything just could be placed under that label.

Aspray:

So in the case of Cornell, it seemed to work out pretty well.

Gries:

Very well. I should say that most people are under the wrong impression, that CER proposals had to be based like that. It is not the case. Even in our second CER grant, people kept telling us you have to have a theme. We did not have a theme, if I can remember right, or it was not a good one. If you looked in the CER blurb, whatever you call those things, where they discuss it

Aspray:

Program announcement.

Gries:

They said the key point was that you would have lots of research that had to be done using computing facilities that could not be developed otherwise. And the key was not working on the same problem, but being able to use the same computing facilities.

Importance of Funding Individuals

Aspray:

I see. Important difference, sure. Let me turn to another point in your message. You write, “I cannot emphasize too much the need for funding of individual researchers at a reasonable level in computer science.” Can you amplify on that comment some?

Gries:

There is a tendency these days to have centers. I think that can be overdone. I think the funding level has been going down and down in the past ten years in terms of dollars, constant dollars. We get less money than we did before. We used to be able to support many more graduate students than we can now. And it has also been the case with the NSF in various areas that they simply have not been able to fund more than 10 or 15 percent of the proposals. Theory had a particularly bad time in 1987 or 1988 or something like that. This deterioration in the individual proposals program has come because of the CER and because of all these large centers. Basically, the funding in computer science has not kept pace with the growth of the field.

Aspray:

Now does that mean that certain kinds of research areas just are not suitable then for application to the NSF? Certain kinds of experimental work?

Gries:

Well, we think they are. The NSF does not have enough funds for them.

Aspray:

Yes, that is what I meant, that one is unlikely to get the kind of funding one wants to do —

Gries:

I think a lot of theory people have been turned down.

Aspray:

So it is not only on the experimental side, it is on the theory side as well?

Gries:

Yes. All over. The field has just grown. We produce 700 Ph.D.s, half of which go into academia, and there are no retirements. So we are adding 350 people to the field each year, and the funding does not increase correspondingly.

Development of Programming Science

Aspray:

In your message, you were asked to comment on the significance of your research, and you were probably a bit too modest to comment directly on this. So let me ask you one or two questions about that. First of all, you were talking about the value of the science of programming to the development of the software engineering profession, and you said that you saw that as far as the only hope for them to become a science in some sense.

Gries:

Yes.

Aspray:

To what degree has that happened so far?

Gries:

Not to the degree that I would like. For example, my book may be used in 20 or 30 places as a senior level course. I think that material should be taught to the freshmen and sophomores. The problem is that none of the texts do a good job on teaching logic as a tool. I am working on one now for that. And the teachers themselves do not understand how to formally calculate pieces of programs, so they cannot teach their students. One of our large problems will be teaching the teachers.

Aspray:

Are there any encouraging signs? I mean, there are those 20 or 30 schools that are using the book.

Gries:

There are, in the sense that there are more books that do a good job on this now. I know of two others that have come out in the 1990s besides mine. Mine is ten years old and it is out of date. And secondly, more and more people are talking about the role of formalism in programming and computer science. And not only the big schools but the small ones. I know of two or three places that are changing their programs to use this viewpoint. Georgetown University. Down in Texas.

Aspray:

I am not sure.

Gries:

It is a small place.

Aspray:

I do not know the school.

Gries:

Just north of Austin. If you want it, I could find out what the address is and the people. So there is more awareness. The task I see in the 1990s is really one of education rather than more research in this regard; in how we teach programming. And it is a matter of educating the teachers and having good textbooks.

Description of Research

Aspray:

Turning to some comments you made about your research, I do not know whether you want to answer this question or not. You said your work entailed related areas of theory of correctness of algorithms, programming language semantics, programming language design, programming methodology, parallelism, and development of particular algorithms.

Gries:

Right.

Aspray:

Would it be possible for us to try, in a couple of sentences or a paragraph, to explain exactly what the heart or the nexus of those problems is? And then in another paragraph to describe what your contribution is? We can do that by going back to your papers and some of the survey papers and such and pulling that material out. But it would be very helpful to us if just in a few words you can tell us what the crux of the problem is in each area and what you have done in those areas.

Gries:

Probably it would be easier for me to write that down and e-mail it to you.

Aspray:

That will be fine too. Whatever is most comfortable for you.

Gries:

That would be much easier for me.

Aspray:

Okay. Thanks so much. Bye now.

Editor’s note: We cannot locate the email message referred to in the interview.