Speaker: Greg Morrisett
Affiliation: Computer Science, Cornell University
Date: 2/15/01
Time and Location: 4:15 PM, B11 Kimball Hall
Title: Towards Next-Generation Low-Level Languages

High-level languages, such as Java and ML, provide demonstrated safety and software engineering benefits. Nonetheless, today's critical systems are still coded in low-level, unsafe, and error-prone languages such as C or C++. A big reason for this is inertia. But there are also technical reasons. For instance, C provides good programmer control over data representations and memory management. This makes C particularly suitable for implementing systems that must interface to hardware, systems that must interface to legacy software, systems that must carefully manage memory, systems that have real-time constraints, etc.

The question is, can we provide a low-level language with the programmer control of C and the safety of Java or ML?