libcats.org
Главная

Programming language pragmatics

Обложка книги Programming language pragmatics

Programming language pragmatics

Thoroughly updated to reflect the most current developments in language design and implementation, the second edition

*Addresses key developments in programming language design:

+ Finalized C99 standard
+ Java 5
+ C# 2.0
+ Java concurrency package (JSR 166) and comparable mechanisms in C#
+ Java and C# generics

*Introduces and discusses scripting languages throughout the book and in an entire new chapter that covers:

+ Application domains: shell languages, text processing and report generation, mathematics and statistics, "glue" languages and general purpose scripting, extension languages, scripting the World Wide Web

+ Design concepts: names and scopes, string and pattern manipulation, high level data types, object orientation

+ Major languages: Perl, PHP, Tcl/Tk, Python, Ruby, JavaScript, XLST

*Updates many sections and topics:

+ iterators
+ exceptions
+ polymorphism
+ templates/generics
+ scope rules and declaration ordering
+ separate compilation
+ garbage collection
+ threads and synchronization

New pedagogical features

Design & Implementation boxes

+ Highlight the interplay between language design and language implementation

Test Your Understanding review questions

+ Help students assess their understanding of key points of a section

In More Depth CD supplements

+ Present more advanced or peripheral material for students who would like to extend their knowledge

Explorations

+ Provide students with additional exercises that are open-ended, research-type activities

New reference features

+ Over 900 numbered and titled examples help the student to quickly cross-reference and access content for initial study and later review.

+ Indices (in the printed text) for both the Design and Implementation boxes and the numbered examples.

+ CD search engine for both the printed text and the supplemental sections.

+ Live links on the CD to Web-based language tutorials, reference manuals, and compilers and interpreters.


On the CD

+ In More Depth sections and sub-sections that are introduced in the book and presented on the CD
+ In More Depth Exercises and Explorations for students wanting additional challenges
+ Links to Web-based language reference manuals and tutorials
+ Links to Web-based compilers and interpreters
+ Text files containing the code fragments featured as examples in the book
+ Search engine to search both the main text and the CD-only content

CD System Requirements
PDF Viewer
The CD material includes PDF documents that you can read with a PDF viewer such as Adobe, Acrobat or Adobe Reader. Recent versions of Adobe Reader for some platforms are included on the CD.

HTML Browser
The navigation framework on this CD is delivered in HTML and JavaScript. It is recommended that you install the latest version of your favorite HTML browser to view this CD. The content has been verified under Windows XP with the following browsers: Internet Explorer 6.0, Firefox 1.5; under Mac OS X (Panther) with the following browsers: Internet Explorer 5.2, Firefox 1.0.6, Safari 1.3; and under Mandriva Linux 2006 with the following browsers: Firefox 1.0.6, Konqueror 3.4.2, Mozilla 1.7.11.
The content is designed to be viewed in a browser window that is at least 720 pixels wide. You may find the content does not display well if your display is not set to at least 1024x768 pixel resolution.

Operating System
This CD can be used under any operating system that includes an HTML browser and a PDF viewer. This includes Windows, Mac OS, and most Linux and Unix systems.

Instructor support

+ Password-protected site for adopters who request the password from a sales representative
+ Solutions to most exercises
+ Figures from the book in several formats
+ Lecture slides prepared by other instructors

New Coverage:
* Addresses the most recent developments in programming language design, including C99, C#, and Java 5.
* Introduces and discusses scripting languages throughout the book as well as in an entire new chapter.
* Includes 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 synchronization.

New Pedagogical Features:
* Highlights the interaction and tradeoffs inherent in language design and language implementation decisions with over 100 "Design and Implementation" call-out boxes.
* Adds end-of-chapter "Exploration" exercises-open-ended, research-type activities.
* Provides review questions after sections for quick self-assessment.
* Includes over 800 numbered examples to help the reader quickly cross-reference and access content.

Amazon.com Review 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.

Ссылка удалена правообладателем
----
The book removed at the request of the copyright holder.
Популярные книги за неделю:
Только что пользователи скачали эти книги: