+353-1-416-8900REST OF WORLD
+44-20-3973-8888REST OF WORLD
1-917-300-0470EAST COAST U.S
1-800-526-8630U.S. (TOLL FREE)

Programming Language Pragmatics. Edition No. 5

  • Book

  • April 2025
  • Elsevier Science and Technology
  • ID: 5986976
Programming Language Pragmatics is the most comprehensive programming language textbook available today, with nearly 1000 pages of content in the book, plus hundreds more pages of reference materials and ancillaries online. Michael Scott takes theperspective that language design and language implementation are tightly interconnected, and that neither can be fully understood in isolation. In an approachable, readable style, he discusses more than 50 languages in the context of understanding how code isinterpreted or compiled, providing an organizational framework for learning new languages, regardless of platform. This edition has been thoroughly updated to cover the most recent developments in programming language design and provides both a solid understanding of the most important issues driving software development today

Table of Contents

I. Foundations 1. Introduction 2. Programming Language Syntax 3. Names, Scopes, Bindings 4. Semantic Analysis 5. Target Machine Architecture II. Core Issues in Language Design 6. Control Flow 7. Data Types 8. Composite Types 9. Subroutines and Control Abstraction 10. Data Abstraction and Object Orientation III. Alternative Programming Models 11. Functional Languages 12. Logic Languages 13. Concurrency 14. Scripting Languages IV. A Closer Look at Implementation 15. Building a Runnable Program 16. Run-time Program Management 17. Code Improvement

Authors

Michael Scott Professor and past Chair, Computer Science Department, University of Rochester, USA.

Michael L. Scott is a professor and past Chair of the Computer Science Department at the University of Rochester. He is best known for work on synchronization and concurrent data structures: algorithms from his group appear in a wide variety of commercial and open-source systems. A Fellow of the ACM and the IEEE, he shared the 2006 Dijkstra Prize in Distributed Computing. In 2001 he received the University's Robert and Pamela Goergen Award for Distinguished Achievement and Artistry in Undergraduate Teaching.

Jonathan Aldrich Institute for Software Research and Computer Science Department, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, USA. Jonathan Aldrich works at the intersection of programming languages and software engineering. His research explores how the way we express software affects our ability to engineer software at scale. A particular theme of much of his work is improving software quality and programmer productivity through better ways to express structural and behavioral aspects of software design within source code.

Professor Aldrich has contributed to object-oriented typestate verification, modular reasoning techniques for aspects and stateful programs, and new object-oriented language models. For his work specifying and verifying architecture, he received a 2006 NSF CAREER award and the 2007 Dahl-Nygaard Junior Prize (press release, article). Right now he's excited to be working on the design of Wyvern, a new modularly extensible programming language.