"This book is a key resource for any computer science student and is certainly faithful to its title - Programming Language Pragmatics…. The updated third edition of this popular book delivers the key concepts of programming languages and their implementation in a concise and intuitive way, illustrated with clear explanations and examples…. In addition to the coverage of traditional language topics, Scott’s book delves into the sometimes obscure, but essential, details of programming artifacts. The descriptions of language theory, along with concrete implementations of how to realise them, are invariably presented in a language-agnostic fashion. And therein lies the strength of this book: whilst the main examples have been updated (with C and Intel x86 replacing Pascal and MIPS), it provides an organisational framework for learning new languages, irrespective of the paradigm…. Programming Language Pragmatics provides a more accessible introduction to many of the key topics than the classic Compilers: Principles, Techniques and Tools by Aho et al. (a.k.a. the ‘Dragon Book’) and provides a deep appreciation of the design and implementation issues of modern languages…. The material is aimed at an undergraduate computer science level, but is also suitable for self-study. Topics are often independent of previously presented material, making it easier to pick and choose areas for study. This is also supported by additional in-depth material and advanced discussion topics on the companion CD…. In summary, this new edition provides both students and professionals alike a solid understanding of the most important issues driving software development today - an essential purchase for any serious programmer or computer scientist!"--BCS.com
From the Back Cover
Programming Language Pragmatics is the most comprehensive programming language book available today. Taking the perspective that language design and language implementation are tightly interconnected and that neither can be fully understood in isolation, this critically acclaimed and bestselling book has been thoroughly updated to cover the most recent developments in programming language design. With a new chapter on run-time program management and expanded coverage of concurrency, this new edition provides both students and professionals alike with a solid understanding of the most important issues driving software development today.
THIRD EDITION FEATURES
- Covers the most recent developments in programming language design, including Java 6 and 7, C++0X, C# 3.0, F#, Fortran 2003 and 2008, Ada 2005, and Scheme R6RS.
- Includes a new chapter on run-time program management, covering virtual machines, managed code, just-in-time and dynamic compilation, reflection, binary translation and rewriting, mobile code, sandboxing, and debugging and program analysis tools.
- Updates the concurrency chapter to address the latest developments in computer architecture and parallel language design, with major new sections on multicore and supercomputer machines, nonblocking synchronization, event-driven programming, memory consistency models, and transactional memory, plus new or updated coverage of OpenMP, Erlang, the pthreads library, and the concurrency features of Java and C#.
- Improves pedagogy throughout the book, with extensive changes to the introductory chapter and the coverage of scanning and parsing, modules and scoping, macros and in-lining, polymorphism, monads, iteration and enumeration, array management, and object and subroutine closures.
- Provides additional resources on a companion CD, with advanced/optional content, hundreds of working examples, an active search facility, and live links to manuals, tutorials, compilers, and interpreters on the World Wide Web. CD content is also available on a "companion" site at elsevierdirect dot com / 9780123745149