Programming Language Pragmatics

Michael L. Scott

  • 出版商: Morgan Kaufmann
  • 出版日期: 1999-10-25
  • 售價: $1,045
  • 語言: 英文
  • 頁數: 858
  • 裝訂: Hardcover
  • ISBN: 1558604421
  • ISBN-13: 9781558604421
  • 已過版

買這商品的人也買了...

商品描述


Order This Book | Authors | Contents | Web-Enhanced | Related Titles

"Michael Scott's book could have been entitled: Why Programming Languages Work. It takes a fresh look at programming languages by bringing together ideas and techniques usually covered in disparate language design, compiler, computer architecture, and operating system courses. Its comprehensive and integrated presentation of language design and implementation illustrates and explains admirably the many deep and profitable connections among these fields."
- Jim Larus, Microsoft Research

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, youll emerge better prepared to choose the best language for particular projects, to make more effective use of languages you already know, and to learn new languages quickly and completely.

Features

  • Addresses the most recent developments in programming language design, spanning more than forty different languages, including Ada 95, C, C++, Fortran 95, Java, Lisp, Scheme, ML, Modula-3, Pascal, and Prolog.
  • Places a special emphasis on implementation issueshow 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 libraries.
  • Provides an accessible introduction to the formal foundations of compilation (automata theory), functional programming (lambda calculus), and logic programming (predicate calculus).

Authors:

Michael L. Scott is a professor in the University of Rochesters 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.

Table of Contents:

Preface
1 Introduction
2 Programming Language Syntax
3 Names, Scopes, and Bindings
4 Semantic Analysis
5 Assembly-Level Computer Architecture
6 Control Flow
7 Data Types
8 Subroutines and Control Abstraction
9 Building a Runnable Program
10 Data Abstraction and Object Orientation
11 Nonimperative Programming Models: Functional and Logic Languages
12 Concurrency
13 Code Improvement
Appendices

Web-Enhanced:

From the author's page for Programming Language Pragmatics:

For Instructors
  • Solutions for exercises
    INSTRUCTORS PLEASE READ

    Our standard request is that you not post solutions online and that you take precautions to protect the integrity of our password protected sites. We have been notified that students are searching the internet for answers to their homework exercises from other instructors' websites. We are requesting that everyone respect the need to restrict access to this material and take adequate precautions to prevent access to solutions by students not in your own courses if you choose to post them on the Web.

    Request a password from your academic sales representative.

Other titles covering compiler design:

Advanced Compiler Design and Implementation by Steven S. Muchnick covers advanced issues in the design and implementation of compilers for modern processors. Written for professionals and graduate students, it guides readers in designing and implementing highly optimizing compilers for real-world languages.

Related Titles:

Software Engineering & Programming