Pub. Date:
Essentials of Programming Languages, third edition

Essentials of Programming Languages, third edition

by Daniel P. Friedman, Mitchell Wand

NOOK Bookthird edition (eBook - third edition)

View All Available Formats & Editions

Available on Compatible NOOK Devices and the free NOOK Apps.
WANT A NOOK?  Explore Now


A new edition of a textbook that provides students with a deep, working understanding of the essential concepts of programming languages, completely revised, with significant new material.

This book provides students with a deep, working understanding of the essential concepts of programming languages. Most of these essentials relate to the semantics, or meaning, of program elements, and the text uses interpreters (short programs that directly analyze an abstract representation of the program text) to express the semantics of many essential language elements in a way that is both clear and executable. The approach is both analytical and hands-on. The book provides views of programming languages using widely varying levels of abstraction, maintaining a clear connection between the high-level and low-level views. Exercises are a vital part of the text and are scattered throughout; the text explains the key concepts, and the exercises explore alternative designs and other issues. 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. Significant additions have been made to the text, including completely new chapters on modules and continuation-passing style. Essentials of Programming Languages can be used for both graduate and undergraduate courses, and for continuing education courses for programmers.

Related collections and offers

Product Details

ISBN-13: 9780262304092
Publisher: MIT Press
Publication date: 04/18/2008
Series: The MIT Press
Sold by: Penguin Random House Publisher Services
Format: NOOK Book
Pages: 432
File size: 2 MB
Age Range: 18 Years

About the Author

Daniel P. Friedman is Professor of Computer Science in the School of Informatics, Computing, and Engineering at Indiana University and is the author of many books published by the MIT Press, including The Little Schemer and The Seasoned Schemer (with Matthias Felleisen); The Little Prover (with Carl Eastlund); and The Reasoned Schemer (with William E. Byrd, Oleg Kiselyov, and Jason Hemann).

Mitchell Wand is Professor of Computer Science at Northeastern University.

What People are Saying About This

From the Publisher

I've found the interpreters-based approach for teaching programming languages to be both compelling and rewarding for my students. Exposing students to the revelation that an interpreter for a programming language is itself just another program opens up a world of possibilities for problem-solving. The third edition of Essentials of Programming Languages makes this approach of writing interpreters more accessible than ever.

Marc L. Smith, Department of Computer Science, Vassar College

Having taught from EOPL for several years, I appreciate the way it produces students who understand the terminology and concepts of programming languages in a deep way, not just from reading about the concepts, but from programming them and experimenting with them. This new edition has an increased emphasis on types as contracts for defining procedure interfaces, which is quite important for many students. This new emphasis meshes well with the way the domains and operations of the interpreters are described.

Gary T. Leavens, School of Electrical Engineering and Computer Science,University of Central Florida

With lucid prose and elegant code, this book provides the most concrete introduction to the few building blocks that give rise to a wide variety of programming languages. I recommend it to my students and look forward to using it in my courses.

Chung-chieh Shan, Department of Computer Science, Rutgers University

Customer Reviews