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, you'll 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.
* 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 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 libraries.
* Provides an accessible introduction to the formal foundations of compilation (automata theory), functional programming (lambda calculus), and logic programming (predicate calculus).
"synopsis" may belong to another edition of this title.
As a textbook suitable for the classroom or self-study, Michael Scott's Programming Language Pragmatics provides a worthy tour of the theory and practice of how programming languages are run on today's computers. Clearly organized and filled with a wide-ranging perspective on over 40 different languages, this book will be appreciated for its depth and breadth of coverage on an essential topic in computer science.
With references to dozens of programming languages, from Ada to Turing and everything in between (including C, C++, Java, and Perl), this book is a truly in-depth guide to how code is compiled (or interpreted) and executed on computer hardware. Early chapters tend to be slightly more theoretical (with coverage of regular expressions and context-free grammars) and will be most valuable to the computer science student, but much of this book is accessible to anyone seeking to widen their knowledge (especially since recent standards surrounding XML make use of some of the same vocabulary presented here).
The book has a comprehensive discussion of compilation and linking, as well as how data types are implemented in memory. Sections on functional and logical programming (illustrated with Scheme and Prolog, which are often used in AI research) can expand your understanding of how programming languages work. Final sections on the advantages--and complexities--of concurrent processing, plus a nice treatment of code optimization techniques, round out the text here. Each chapter provides numerous exercises, so you can try out the ideas on your own.
Students will benefit from the practical examples here, drawn from a wide range of languages. If you are a self-taught developer, the very approachable tutorial can give you perspective on the formal definitions of many computer languages, which can help you master new ones more effectively. --Richard Dragan
Topics covered: A survey of today's programming languages, compilation vs. interpretation, the compilation process, regular expression and context-free grammars, scanners and parsers, names, scopes and bindings, scope rules, overloading, semantic analysis, introduction to computer architecture, representing data, instruction sets, 680x0 and MIPs architectures, control flow and expression evaluation, iteration and recursion, data types, type checking, records, arrays, strings, sets, pointers, lists, file I/O, subroutines, calling sequences and parameter passing, exception handling, coroutines, compile back-end processing, code generation, linking, object-oriented programming basics, encapsulation and inheritance, late binding, multiple inheritance, functional and logical languages, Scheme and Prolog, programming with concurrency, shared memory and message passing, and code optimization techniques.
"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, youÂ’ll 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
"About this title" may belong to another edition of this title.
FREE shipping within U.S.A.
Destination, rates & speedsSeller: SecondSale, Montgomery, IL, U.S.A.
Condition: Good. Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00069682103
Quantity: 1 available
Seller: ThriftBooks-Dallas, Dallas, TX, U.S.A.
Paperback. Condition: Very Good. No Jacket. May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less 3.65. Seller Inventory # G1558604421I4N00
Quantity: 1 available
Seller: ThriftBooks-Atlanta, AUSTELL, GA, U.S.A.
Paperback. Condition: Very Good. No Jacket. May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less 3.65. Seller Inventory # G1558604421I4N00
Quantity: 1 available
Seller: Seattle Goodwill, Seattle, WA, U.S.A.
Condition: Acceptable. May have some shelf-wear due to normal use. Your purchase funds free job training and education in the greater Seattle area. Thank you for supporting Goodwills nonprofit mission! Seller Inventory # 0KVOWC000OQD_ns
Quantity: 1 available
Seller: Red's Corner LLC, Tucker, GA, U.S.A.
Condition: LikeNew. All orders ship by next business day! This is a used hardcover book. Book has wear due to handling. Book has no markings on pages. For USED books, we cannot guarantee supplemental materials such as CDs, DVDs, access codes and other materials. We are a small company and very thankful for your business! Seller Inventory # 4CNO3H002B3H
Quantity: 1 available
Seller: HPB-Red, Dallas, TX, U.S.A.
hardcover. Condition: Good. Connecting readers with great books since 1972! Used textbooks may not include companion materials such as access codes, etc. May have some wear or writing/highlighting. We ship orders daily and Customer Service is our top priority! Seller Inventory # S_397760605
Quantity: 1 available
Seller: BooksRun, Philadelphia, PA, U.S.A.
Hardcover. Condition: Good. 1. Ship within 24hrs. Satisfaction 100% guaranteed. APO/FPO addresses supported. Seller Inventory # 1558604421-11-1
Quantity: 1 available
Seller: Harmonium Books, Philadelphia, PA, U.S.A.
Hardcover. Condition: Very Good. Hardback; textbook; 1st ed.; text is unmarked; previous owner's name on flyleaf in corner; boards fine. Seller Inventory # TY-1CQ8-33LN
Quantity: 1 available
Seller: The Book Spot, Sioux Falls, MN, U.S.A.
Hardcover. Condition: New. Seller Inventory # Abebooks426789
Quantity: 1 available
Seller: Books Puddle, New York, NY, U.S.A.
Condition: New. pp. 858. Seller Inventory # 2697546612
Quantity: 1 available