Book Description
The research reported in this book advances the art of designing programming languages. It sets forth some design principles for abstraction mechanisms and demonstrates their power by showing how they led to improvements in the design of Ada, a new language devised for the Department of Defense and one that will be wisely used in DOD-related projects. The author was a full-time consultant for the preliminary Ada language design and his suggestions for revising it were remarkable in that of the many revisions proposed, his were among the few that proved effective. The book also considers the likely outcome of even more substantial changes to the current version of Ada. In focusing on the effects of abstracting or generalizing the definitional mechanisms of a particular language, the author notes that these effects are manifested in two ways: in the complexity and expressive power of the language, and in the expected performance of programs written in it. He concludes, with regard to the first effect, that proper design of the abstraction facilities of a language can simpify it and icrease its utility to programmers, and wiht regard to the second, that abstraction mechanisms need not involve.