Industrial-Sized Deals Best Books of the Month Shop Women's Handbags Learn more nav_sap_SWP_6M_fly_beacon Deradoorian Fire TV Stick Off to College Essentials Shop Popular Services tmnt tmnt tmnt  Amazon Echo Starting at $99 Kindle Voyage GNO Shop Now Deal of the Day

Essentials of Programming Languages - 2nd Edition 2nd Edition

17 customer reviews
ISBN-13: 978-0262062176
ISBN-10: 0262062178
Why is ISBN important?
ISBN
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Have one to sell? Sell on Amazon
Buy used
$8.17
Buy new
$62.00
More Buying Choices
11 New from $27.70 25 Used from $8.17

There is a newer edition of this item:

Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


InterDesign Brand Store Awareness Rent Textbooks
$62.00 FREE Shipping. Only 1 left in stock. Ships from and sold by Amazon.com. Gift-wrap available.

Frequently Bought Together

Essentials of Programming Languages - 2nd Edition + The Little Schemer - 4th Edition + The Reasoned Schemer
Price for all three: $113.17

Buy the selected items together

Editorial Reviews

Review



"Friedman, Wand, and Haynes have done a landmark job.... The sample interpreters in this book are outstanding models. Indeed, since they are runnable models, I'm sure that these interpreters will find themselves at the cores of many programming systems over the years."
—from the foreword by Hal Abelson --This text refers to an out of print or unavailable edition of this title.

About the Author

Daniel P. Friedman is Professor of Computer Science at Indiana University and is the author of many books published by the MIT Press, including The Little Schemer (fourth edition, 1995), The Seasoned Schemer (1995), A Little Java, A Few Patterns (1997), each of these coauthored with Matthias Felleisen, and The Reasoned Schemer (2005), coauthored with William E. Byrd and Oleg Kiselyov.

Mitchell Wand is Professor of Computer Science at Northeastern University.

Christopher T. Haynes is Associate Professor of Computer Science at Indiana University.

NO_CONTENT_IN_FEATURE


Best Books of the Month
Best Books of the Month
Want to know our Editors' picks for the best books of the month? Browse Best Books of the Month, featuring our favorite new books in more than a dozen categories.

Product Details

  • Hardcover: 408 pages
  • Publisher: The MIT Press; 2 edition (January 29, 2001)
  • Language: English
  • ISBN-10: 0262062178
  • ISBN-13: 978-0262062176
  • Product Dimensions: 8 x 1 x 9 inches
  • Shipping Weight: 2.1 pounds (View shipping rates and policies)
  • Average Customer Review: 3.7 out of 5 stars  See all reviews (17 customer reviews)
  • Amazon Best Sellers Rank: #701,320 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews

32 of 33 people found the following review helpful By Ravi Mohan on August 29, 2005
Format: Hardcover
This book is invaluable to someone who is trying to understand how computer languages really work.

The Good

1. Very comprehensive .Covers a whole gamut of programming language features.By the time you finish the book you will have built interpreters which demonstrate recursion, call-by-value/reference/need and name semantics, class based and prototype based OO, type inference ,Continuations etc .

2. Very "Hands on" . You are taught how programming languages work by actually building intrepreters (in other words an Operational Semantics is used) .This is the best way to learn .

3.Environments and Continuations are explained extremely well.

4.Lots of exercises which explore design alternatives . For example the main flow deals with lexical binding of variables, with dynamic binding left as an exercise.

The Bad

1. A certain knowledge of scheme (let letrec, cond) etc is assumed (The First edition was better in this respect and was more self contained)

2.The writing is sometimes unnecessarily dense with long sentences and slighly disjonted paragraphs.

3.some essential features of a language design (eg: memory management ) are skipped entirely.While this is understandable from the pov of reducing the length of the book, it also means that one needs to read supplementary material before one can write real life interpreters.

4.Some parts of the interpretation/compilation process are skipped entirely or treated through "magic". For example the book provides practically no explanation of lexing or parsing and some "magic " code (SLLGEN) is used .The examples for using this framework are thoroughly inadequate.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
42 of 45 people found the following review helpful By "witchkingofangmar" on July 16, 2002
Format: Hardcover
I took Friedman's undergraduate Programming Languages course at Indiana University and though this book was the required text
Friedman used it sparingly, as did I. It's full of formal programming language theory and enough EBNF grammars to satisfy the purist while confusing the practioner. To Friedman's credit, he is realistic about the book's audience (graduate,doctoral, and post-doctoral) and about the prevalence of Scheme outside of academia.
The chapters on continuations and object oriented programming, however, are quite accessible and interesting reading. Though he doesn't do it much in the book, Friedman decoupled the course from Scheme several times and we examined everything from C's setjmp, longjmp mechanisms to C++'s virtual method lookup implementation.
Word of advice to those taking a course taught by Friedman: Don't miss a single lecture or you will be hopelessly lost.
Buy this book if you are interested in formal programming language theory. Don't buy this book if you are interested in learning a specific language or are put off by a dense, rigorous approach to learning programming languages. In any event, best
of luck with your studies.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
20 of 23 people found the following review helpful By A Customer on September 20, 1997
Format: Hardcover
I've used this book to teach an undergraduate programming language for 4 years now. I believe it to be the finest text in the area because of its approach to the subject. Many books in this area are what I call smorgasborg books--leading the reader through one language syntax after another without ever getting to what really matters: programming language operation. In EoPL, Freidman, Wand, and Haynes solve this problem by using a standard technique of computer science: using the right langauge for the job. In this case the job is progrmaming language operation and the language is Scheme. Don't be fooled into thinking you're learning Scheme--you're actually learning a great deal about programming languages along the way.

The book covers the operational semantics of the most important features in programming languages and give users a clear understanding of the infrastructure of programming langauges along the way. Highly recommended.

See [...] for a course based on this book.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
8 of 9 people found the following review helpful By Joe Duffy on January 15, 2006
Format: Hardcover
I enjoyed this book's implementation-oriented approach to teaching language constructs, in the tune of such classics as SICP. The book title is misleading in that this book focuses almost exclusively on functional languages. But within that realm, it admittedly does cover a broad range of features. The book has just the right amount of formal notation to insure relative completeness, but not so much as to scare away unfamiliar readers. I think it's a nice gentle introduction to the whole field.

As I alluded to, the only reason I didn't give this a 5-star is the slightly misleading general-purposeness appeal, even though it really is entirely functional-oriented. Other than that, the book was a great read.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
21 of 29 people found the following review helpful By A Customer on May 5, 2002
Format: Hardcover
For better or for worse, this book is probably the best general "hands-on" introduction to programming language concepts, showing students how to write interpreters for a variety of programming-language paradigms. It covers what many computer scientists consider the most important ones: functional programming, object-oriented programming, type systems/inference, and logic programming (though it gives short shrift to the latter).
Teachers love the book because it takes a unified, minimalist approach, using the simple, elegant language Scheme. Students seem to hate the book for the same reason, complaining that the details of Scheme divert attention from the concepts themselves.
This situation makes it essential to supplement the book with programming assignments in actual languages (Java, ML, Prolog), so students can see what all the trouble is for, and what's really exciting about the ideas in the book. Otherwise, reading this book is like learning how to build a car without ever having seen one!
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews

Set up an Amazon Giveaway

Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more
Essentials of Programming Languages - 2nd Edition
This item: Essentials of Programming Languages - 2nd Edition
Price: $62.00
Ships from and sold by Amazon.com

What Other Items Do Customers Buy After Viewing This Item?

Want to discover more products? Check out this page to see more: the t programming language