Apress Access

Introduction to the Theory of Programming Languages

By Gilles Dowek , Jean-Jacques Lévy

  • eBook Price: $29.95
Buy eBook Buy Print Book

Introduction to the Theory of Programming Languages Cover Image

This book sets unites the various formalisms that define a programming language: ‘small steps’ operational semantics, ‘big steps’ operational semantics, and denotational semantics. It illustrates them with typical features of programming languages.

Full Description

  • Add to Wishlist
  • ISBN13: 978-0-8572-9075-5
  • 112 Pages
  • User Level: Students
  • Publication Date: December 9, 2010
  • Available eBook Formats: PDF
Full Description
The design and implementation of programming languages, from Fortran and Cobol to Caml and Java, has been one of the key developments in the management of ever more complex computerized systems. Introduction to the Theory of Programming Languages gives the reader the means to discover the tools to think, design, and implement these languages. It proposes a unified vision of the different formalisms that permit definition of a programming language: small steps operational semantics, big steps operational semantics, and denotational semantics, emphasising that all seek to define a relation between three objects: a program, an input value, and an output value. These formalisms are illustrated by presenting the semantics of some typical features of programming languages: functions, recursivity, assignments, records, objects, ... showing that the study of programming languages does not consist of studying languages one after another, but is organized around the features that are present in these various languages. The study of these features leads to the development of evaluators, interpreters and compilers, and also type inference algorithms, for small languages.
Table of Contents

Table of Contents

  1. 1. Terms and Relations.
  2. 2. The Language PCF.
  3. 3. From Evaluation to Interpretation.
  4. 4. Compilation.
  5. 5. PCF with Types.
  6. 6. Type Inference.
  7. 7. References and Assignment.
  8. 8. Records and Objects.
  9. 9. Epilogue.
  10. 10. Index.
  11. 11. Bibliography.

If you think that you've found an error in this book, please let us know by emailing to editorial@apress.com . You will find any confirmed erratum below, so you can check if your concern has already been addressed.
No errata are currently published


    1. Concurrent Programming: Algorithms, Principles, and Foundations


      View Book