More About Debate Proposals for POPL '00

The POPL committee will judge debate proposals according to the same quality standards as normal papers. Because this is the first year that we have tried to have such debates, we do not want to insist on any particular sort of proposal; however, we do suggest below a couple of models for debates that would attempt to articulate the most promising directions for future research.

These debates are partially inspired by the debate between Bill Harrison and Steve Johnson at POPL 8, which asked whether research should principally be aimed at developing languages that let programmers indicate more directly the kind of code to be generated by a compiler, or at developing optimizing compilers. Bill and Steve shared their arguments with each other ahead of time, and concluded that the central issue was the performance/ease-of-programming trade off. They then agreed on a sample program, coded it up using both approaches, and compared the two pieces of compiled code and the speeds at which they ran. The position papers in the proceedings of POPL 8 indicate the basic positions they each developed for the debate, but unfortunately not all of the work done in preparation appears in those position papers. This debate was an intriguing exercise, and did, in fact, influence the directions that researchers took.

Another paper that changed directions for research -- and that could have provided suitable material for a lively debate -- was written by Lipton, DeMillo, and Perlis for POPL 4 on the value of proofs of correctness of programs. Many had felt that the direction of research into proofs of program correctness was ill directed. Because the arguments were well known, it was not really a promising topic for a paper. However, Lipton et al. came up with an original argument that human-generated proofs were not likely to be useful because human-generated proofs of mathematical statements are often incorrect, but tend to be corrected because they are interesting to read, and are read by other mathematicians. They further argued that people were unlikely to publish proofs of correctness of large programs, and so without the additional readers the act of proving was not likely to gain the value that its exponents expected.

A debate will hopefully frame the discussion of the validity of some principle or research direction. The authors should give some reasons for believing or disbelieving the components of this framework. Often these reasons will be a well articulated sequence of statements, where if all of them are true, the proposition will be true. Hopefully, further work can use this framework to give more concrete evidence about each of the components of the argument.

We have no a priori limit on the number of debates that we will accept. We hope to accept several, but might accept none. The debates will probably take somewhat longer to present and are likely to be given either 45 minutes or to be scheduled at the end of a day so that the audience can feel free to ask many questions.

With some trepidation we give some examples of possibly interesting debate topics. (These are unlikely to be the actual topics accepted by the committee, because the topics chosen for debate will depend on which ones are proposed.)

In these examples, we will give a one-sentence summary (with the intent of offending everyone equally) of one of the participants point of view:  

  1. We have gotten close to the asymptotic limit of improvements in generated code that can be achieved with static optimizing compiler technology, and should instead look at means of optimizing the run time associated with a compiler.
  2. The study of design patterns are a temporary phenomenon, because once they are recognized they should be added to programming languages so that tools can be written to support them.
  3. Programming languages should not be designed with the goal of making it possible to check completely the type safety of a program at compile time: in a reasonably well-designed language that has a simple type system, few type errors escape the simple checks; the complications introduced into a language by incorporating more elaborate types are not worth it.

Debate proposals should be of a length sufficient for the program committee to judge the quality of the arguments that would be set forth during the proposed debate, and whether it is likely to be a worthwhile event for POPL '00 attendees. A debate proposal as short as a couple of pages may suffice; at most, they should be the length of an ordinary submission.

Submissions of debate proposals should be carried out via the same electronic submission form that is being used for submissions of papers. The accompanying abstract should clearly state that the submission is a debate proposal.

Go to POPL'00 Submission Page: Submit Paper or Debate Proposal