Introduction to the Theory of Programming Languages

By Gilles Dowek , Jean-Jacques Lévy

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

  • ISBN13: 978-0-8572-9075-5
  • 112 Pages
  • User Level: Students
  • Publication Date: December 9, 2010
  • Available eBook Formats: PDF
  • eBook Price: $39.95
Buy eBook Buy Print Book Add to Wishlist
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.
Errata

Please Login to submit errata.

No errata are currently published