A new chapter on run-time program management covers virtual machines, managed code, just-in-time and dynamic compilation, reflection, binary translation and rewriting, mobile code, sandboxing, and debugging and program analysis tools. Over 800 numbered examples are provided to help the reader quickly cross-reference and access content.
This text is designed for undergraduate Computer Science students, programmers, and systems and software engineers.Classic programming foundations text now updated to familiarize students with the languages they are most likely to encounter in the workforce, including including Java 7, C++, C# 3.0, F#, Fortran 2008, Ada 2005, Scheme R6RS, and Perl 6.New and expanded coverage of concurrency and run-time systems ensures students and professionals understand the most important advances driving software today.Includes over 800 numbered examples to help the reader quickly cross-reference and access content.
The book provides readers with a solid foundation in the syntax, semantics, and pragmatics of the full range of programming languages, from traditional languages like C to the latest in functional, scripting, and object-oriented programming. This fourth edition has been heavily revised throughout, with expanded coverage of type systems and functional programming, a unified treatment of polymorphism, highlights of the newest language standards, and examples featuring the ARM and x86 64-bit architectures.Updated coverage of the latest developments in programming language design, including C & C++11, Java 8, C# 5, Scala, Go, Swift, Python 3, and HTML 5Updated treatment of functional programming, with extensive coverage of OCamlNew chapters devoted to type systems and composite typesUnified and updated treatment of polymorphism in all its formsNew examples featuring the ARM and x86 64-bit architectures
The new edition carries on these distinctive features as well as the signature tradition of illustrating the most recent developments in programming language design with a variety of modern programming languages.Addresses the most recent developments in programming language design, including C99, C#, and Java 5Introduces and discusses scripting languages throughout the book as well as in an entire new chapterIncludes a comprehensive chapter on concurrency, with coverage of the new Java concurrency package (JSR 166) and the comparable mechanisms in C#Updates many sections and topics, including iterators, exceptions, polymorphism, templates/generics, scope rules and declaration ordering, separate compilation, garbage collection, and threads and synchronizationHighlights the interaction and tradeoffs inherent in language design and language implementation decisions with over 100 "Design and Implementation" call-out boxesAdds end-of-chapter "Exploration" exercises—open-ended, research-type activitiesProvides review questions after sections for quick self-assessmentIncludes over 800 numbered examples to help the reader quickly cross-reference and access content