In-depth case studies of representative languages from five generations of programming language design (Fortran, Algol-60, Pascal, Ada, LISP, Smalltalk, and Prolog) are used to illustrate larger themes."--BOOK JACKET.
In this book, the author has chosen Caml and C. To understand the principles of programming languages, it is also important to learn how to precisely define the meaning of a program, and tools for doing so are discussed.
The book concludes with two chapters which introduce basic notions of syntax, semantics and computability, to provide a completely rounded picture of what constitutes a programming language.
The complete Scheme code for all the interpreters and analyzers in the book can be found online through The MIT Press web site. For this new edition, each chapter has been revised and many new exercises have been added.
The text uses interpreters, written in Scheme, to express the semantics of many essential language elements in a way that is both clear and directly executable.
This book is about high level programming languages. It deals with all the major aspects of programming languages (including a lot of examples and exercises).