Programming Language Design and Software Quality

October 27, 1999
2:50 pm - 4:00 pm
Halligan 111
Speaker: Tucker Taft, Technical Director, Distributed IT Solutions AverStar (formerly Intermetrics, Inc.), Burlington, MA

Abstract

When designing a programming language, one essential fact must be remembered: programmers are humans, with the human penchant for making When designing a programming language, one essential fact must be remembered: programmers are humans, with the human penchant for making mistakes. Are there ways that the design of a programming language can help overcome our human weaknesses, by allowing the implementation to catch, at compile-time, many of the kinds of mistakes we make, or failing that, at run-time? This talk will discuss some of the techniques that can be used during language design to make typical mistakes easier to detect, and thereby help programmers achieve a higher level of quality at an earlier stage in the life-cycle of an application. The talk will include examples from various recent programming language designs, including C++, Eiffel, Ada 95, and Java.