Skip to product information
1 of 1
Regular price £73.49 GBP
Regular price £67.00 GBP Sale price £73.49 GBP
Sale Sold out
Free UK Shipping

Freshly Printed - allow 8 days lead

Theories of Programming Languages

This text is perfect for advanced undergraduate and beginning graduate courses in programming language theory.

John C. Reynolds (Author)

9780521594141, Cambridge University Press

Hardback, published 13 October 1998

514 pages
25.4 x 17.8 x 2.9 cm, 1.1 kg

"...an important book...It is thorough and well organized, and the explanations are very clear. I found the technical content to be in almost every respect flawless. Although written to be a student text, I believe that most researchers (and many practitioners) in programming lanauges (and related fields) would find it worth reading." Journal of Functional Programming

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.

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.

Subject Areas: Mathematical theory of computation [UYA], Programming & scripting languages: general [UMX]

View full details