Theories of Programming Languages
First published in 1998, this textbook is a broad but rigourous survey of the theoretical basis for the design, definition and implementation of programming languages and of systems for specifying and proving programme behaviour. Both imperative and functional programming are covered, as well as the ways of integrating these aspects into more general languages. Recognising a unity of technique beneath the diversity of research in programming languages, the author presents an integrated treatment of the basic principles of the subject. He identifies the relatively small number of concepts, such as compositional semantics, binding structure, domains, transition systems and inference rules, that serve as the foundation of the field. Assuming only knowledge of elementary programming and mathematics, this text is perfect for advanced undergraduate and beginning graduate courses in programming language theory and also will appeal to researchers and professionals in designing or implementing computer languages.
Product details
February 2011Adobe eBook Reader
9780511824401
0 pages
0kg
This ISBN is for an eBook version which is distributed on our behalf by a third party.
Table of Contents
- Preface
- 1. Predicate Logic
- 2. The Simple Imperative Language
- 3. Programme Specifications and their Proofs
- 4. Arrays
- 5. Failure, Input-Output and Continuations
- 6. Transition Semantics
- 7. Nondeterminism and Guarded Commands
- 8. Shared-variable Concurrency
- 9. Communicating Sequential Processes
- 10. The Lambda Calculus
- 11. An Eager Functional Language
- 12. Continuations in a Functional Language
- 13. Iswim-like Languages
- 14. A Normal-order Language
- 15. The Simple Type System
- 16. Subtypes and Intersection Types
- 17. Polymorphism
- 18. Module Specification
- 19. Algol-like Languages
- Appendices
- Bibliography
- Index.