Design Concepts in Programming Languages
Book Details:
Pages: | 1352 |
Published: | Jul 18 2008 |
Posted: | Nov 19 2014 |
Language: | English |
Book format: | PDF |
Book size: | 20.68 MB |
Book Description:
Hundreds of programming languages are in use today--scripting languages for Internet commerce, user interface programming tools, spreadsheet macros, page format specification languages, and many others. Designing a programming language is a metaprogramming activity that bears certain similarities to programming in a regular language, with clarity and simplicity even more important than in ordinary programming. This comprehensive text uses a simple and concise framework to teach key ideas in programming language design and implementation. The book's unique approach is based on a family of syntactically simple pedagogical languages that allow students to explore programming language concepts systematically. It takes as premise and starting point the idea that when language behaviors become incredibly complex, the description of the behaviors must be incredibly simple. The book presents a set of tools (a mathematical metalanguage, abstract syntax, operational and denotational semantics) and uses it to explore a comprehensive set of programming language design dimensions, including dynamic semantics (naming, state, control, data), static semantics (types, type reconstruction, polymporphism, effects), and pragmatics (compilation, garbage collection). The many examples and exercises offer students opportunities to apply the foundational ideas explained in the text. Specialized topics and code that implements many of the algorithms and compilation methods in the book can be found on the book's Web site, along with such additional material as a section on concurrency and proofs of the theorems in the text. The book is suitable as a text for an introductory graduate or advanced undergraduate programming languages course; it can also serve as a reference for researchers and practitioners.
Concepts in Programming Languages elucidates the central concepts used in modern programming languages, such as functions, types, memory management, and control. The book is unique in its comprehensive presentation and comparison of major object-oriented programming languages. Separate chapters examine the history of objects, Simula and Smalltalk, and the prominent languages C++ and Java. The author presents foundational topics, such as lambda calculus and denotational semantics, in an easy-to-read, informal style, focusing on the main insights provided by these theories. Advanced topics include concurrency, concurrent object-oriented programming, program components, and inter-language interoperability. A chapter on logic programming illustrates the ...
Concepts and Programming Languages, Requirements for Programming Systems, Decision-Making Aids
2nd Edition
The rapid advances in performance and miniaturisation in microtechnology are constantly opening up new markets for the programmable logic controller (PLC). Specially designed controller hardware or PC-based controllers, extended by hardware and software with real-time capability, now control highly complex automation processes. This has been extended by the new subject of safe- related controllers, aimed at preventing injury by machines during the production process. The different types of PLC cover a wide task spectrum - ranging from small network node computers and distributed compact units right up to modular, fau- tolerant, high-performance PLCs. T...
Programming Concepts in C++ is one in a series of books that introduce the basic concepts of computer programming, using a selected programming language. Other books in the series use languages like Java and Python, but all focus on concepts and not on any particular language. The presentation of the material is the same in each language, and much of the text is identical. Code samples are specific to the selected language, and some unique language features are unavoidably included, but the presentation is largely language-independent. A unique feature of the book is that it explains how to acquire, install, and use freely available software to edit, compile, and run console programs on just about any system, including Windows and Mac. Its examples u...
2007 - 2021 © eBooks-IT.org