Programming Linguistics

Front Cover
Programming Linguistics examines a wide range of programming language designs, from Fortran to the newest research languages, to discover their common patterns, relationships, and antecedents. In studying the evolution of programming languages, the authors are also studying a series of answers to the central (and still unanswered) questions of what programs are and how they should be built. Programming Linguistics approaches language design as an attempt to define the nature of programming and the shape and structure of programs, rather than as the attempt to solve a series of narrow, disjoint technical problems. It emphasizes the structural-engineering rather than mathematical approach to programming, the importance of aesthetics and elegance in the success of language design, and provides an integrated treatment of concurrency and parallelism. Its readable and informal but rigorous coverage of the gamut of programming language designs is based on a simple and general programming model called the Ideal Software Machine. There are helpful exercises throughout. David Gelernter is an Associate Professor in the Department of Computer Science at Yale University. Suresh Jagannathan is an Associate Research Scientist at Yale.

Contents

Goals and Methods
1
X
7
Fortran Algol 60 and Lisp
85
APL and Cobol
161
Pascal With Notes on Algol 68 and PLI
187
The Aesthetics of Simplicity
216
The Class in Simula 67 and Smalltalk with Notes
223
1
242
The Closure in Scheme
277
Declarative Languages
305
17
339
Ideology and Engineering
344
Parallel Languages
349
Conclusion
389
Bibliography
395
32
396

59
267
Copyright

Bibliographic information