Programming Language Pragmatics
Programming Language Pragmatics addresses the fundamental principles
at work in the most important contemporary languages, highlights the
critical relationship between language design and language
implementation, and devotes special attention to issues of importance
to the expert programmer. Thanks to its rigorous but accessible
teaching style, readers emerge better prepared to choose the best
language for particular projects, to make more effective use of
languages they already know, and to learn new languages quickly and
Addresses the most recent developments in programming language
design, spanning more than 40 different languages, including
Ada 95, C and C++, Fortran 95, Java, Lisp and Scheme, ML,
Modula-3, Pascal, and Prolog.
Places a special emphasis on implementation issues -- how the
techniques used by compilers and related tools influence language
design, and vice versa.
Covers advanced topics in language design and implemenation, such
as iterators, coroutines, templates (generics), separate
compilation, I/O, type inference, and exception handling.
Reviews language-related topics in assembly-level architecture
critical for understanding what a compiler does to a program.
Offers in-depth coverage of object oriented programming, including
multiple inheritance and dynamic method binding.
Devotes a special section to static and dynamic linking.
Includes a comprehensive chapter on concurrency, with detailed
coverage of both shared-memory and message-passing languages and
Provides an accessible introduction to the formal foundations of
compilation (automata theory), functional programming (lambda
calculus), and logic programming (predicate calculus).
About the Author
Michael L. Scott is a professor in the University of Rochester's
Department of Computer Science, which he chaired from 1996 to 1999.
He is the designer of the Lynx distributed programming language and a
co-designer of the Charlotte and Psyche parallel operating systems, the
Bridge parallel file system, the Cashmere distributed shared memory
system, and the MCS mutual exclusion lock. He received his Ph.D. from
the University of Wisconsin-Madison in 1985.
Programming Languages/ Advanced Computing
Morgan Kaufmann Publishers
Back to the evaluation guide
Back to the book home page