or
Sign in to turn on 1-Click ordering.
 
 
5% CashBack with PayPhrase
More Buying Choices
43 used & new from $13.32

Have one to sell? Sell yours here
 
   
Essentials of Programming Languages - 2nd Edition
 
See larger image
 
Tell the Publisher!
I’d like to read this book on Kindle

Don’t have a Kindle? Get your Kindle here.
 
  

Essentials of Programming Languages - 2nd Edition (Hardcover)

~ (Author), Mitchell Wand (Author), Christopher T. Haynes (Author)
3.7 out of 5 stars  See all reviews (17 customer reviews)

List Price: $62.00
Price: $43.82 & this item ships for FREE with Super Saver Shipping. Details
You Save: $18.18 (29%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Only 3 left in stock--order soon (more on the way).

Want it delivered Monday, December 14? Choose One-Day Shipping at checkout. Details
Ordering for Christmas? To ensure delivery by December 24, choose FREE Super Saver Shipping at checkout. Read more about holiday shipping.

13 new from $37.00 30 used from $13.32

Formats

Amazon Price New from Used from
  Hardcover, January 28, 2001 $43.82 $37.00 $13.32
  Paperback, January 22, 1992 -- $124.28 $23.83
There is a newer edition of this item:
Essentials of Programming Languages, 3rd Edition Essentials of Programming Languages, 3rd Edition 3.0 out of 5 stars (2)
$43.87
In Stock.
What Do Customers Ultimately Buy After Viewing This Item?
Essentials of Programming Languages - 2nd Edition
53% buy the item featured on this page:
Essentials of Programming Languages - 2nd Edition 3.7 out of 5 stars (17)
$43.82
Essentials of Programming Languages, 3rd Edition
20% buy
Essentials of Programming Languages, 3rd Edition 3.0 out of 5 stars (2)
$43.87
The Little Schemer - 4th Edition
11% buy
The Little Schemer - 4th Edition 4.0 out of 5 stars (38)
$18.07
Programming Language Pragmatics, Third Edition
9% buy
Programming Language Pragmatics, Third Edition 4.8 out of 5 stars (22)
$56.00

Frequently Bought Together

Essentials of Programming Languages - 2nd Edition + The Scheme Programming Language, 4th Edition + The Little Schemer - 4th Edition
  • This item: Essentials of Programming Languages - 2nd Edition by Daniel P. Friedman

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • The Scheme Programming Language, 4th Edition by R. Kent Dybvig

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • The Little Schemer - 4th Edition by Duane Bibby

    In Stock.
    Ships from and sold by Amazon.com.
    Eligible for FREE Super Saver Shipping on orders over $25. Details


Special Offers and Product Promotions

  • Earn 5% CashBack with PayPhrase. Use PayPhrase for express checkout and earn up to $250 CashBack. Get started by choosing your PayPhrase. Limited time offer, restrictions apply. Learn more.


Customers Who Bought This Item Also Bought

The Little Schemer - 4th Edition

The Little Schemer - 4th Edition

by Duane Bibby
4.0 out of 5 stars (38)  $18.07
The Scheme Programming Language, 4th Edition

The Scheme Programming Language, 4th Edition

by R. Kent Dybvig
4.8 out of 5 stars (6)  $34.28
Coders at Work

Coders at Work

by Peter Seibel
3.9 out of 5 stars (28)  $19.79
Programming Language Pragmatics, Third Edition

Programming Language Pragmatics, Third Edition

by Michael Lee Scott
4.8 out of 5 stars (22)  $56.00
Introduction to the Theory of Computation, Second Edition

Introduction to the Theory of Computation, Second Edition

by Michael Sipser
4.5 out of 5 stars (55)  $124.15
Explore similar items

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 alternate Hardcover edition.


Product Description

This textbook offers a deep understanding of the essential concepts of programming languages. The approach is analytic and hands-on. 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. It also examines some important program analyses. Extensive exercises explore many design and implementation alternatives.

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: 9 x 8 x 0.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.com Sales Rank: #708,565 in Books (See Bestsellers in Books)

More About the Author

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

Visit Amazon's Daniel P. Friedman Page

Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(1)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

 

Customer Reviews

17 Reviews
5 star:
 (8)
4 star:
 (3)
3 star:
 (1)
2 star:
 (3)
1 star:
 (2)
 
 
 
 
 
Average Customer Review
3.7 out of 5 stars (17 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
33 of 35 people found the following review helpful:
4.0 out of 5 stars Enjoyed the Class, Didn't care for the Textbook, July 16, 2002
By "witchkingofangmar" (Indianapolis, IN United States) - See all my reviews
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 Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
24 of 25 people found the following review helpful:
4.0 out of 5 stars An Almost Perfect Book, August 29, 2005
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.It is better to skip using this framework and just use list syntax and the read functionality of scheme .

Summary

With all its faults (which will probably get fixed in the next edition ) this is an incredible book and should be part of the library of every programmer interested in learning how languages work. As far as i know there isn't a single other book that can do better in conveying how various features of languages really work and interact .

While this book may not be suitable for an undergraduate course of study(withoout an excellent teacher to help students get ove r the difficult bits) it is ideal for the self taught programmer .

If you don't mind reading extra material/browsing the web to supplement this book, just buy it.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
18 of 21 people found the following review helpful:
5.0 out of 5 stars A Great Programming Language Text, September 20, 1997
By A Customer
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 http://lal.cs.byu.edu/cs330 for a course based on this book.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

5.0 out of 5 stars very methodical and simple
its really a nice book to start with functional programming and thinkin in terms of recursion. you can easily write a cool interpreter by following this book cover to .... Read more
Published on March 2, 2006 by Rajesh Kumar

4.0 out of 5 stars Good balance of formal and layman language
I enjoyed this book's implementation-oriented approach to teaching language constructs, in the tune of such classics as SICP. Read more
Published on January 15, 2006 by Joe Duffy

2.0 out of 5 stars Be sure to have your dictionary on hand while reading...
I honestly don't understand why professors choose this book to teach programming language concepts/semantics. Read more
Published on May 20, 2004

5.0 out of 5 stars excellent
I had a lot of fun going through the book and following the steps to build an increasingly sophisticated language interpreter. Read more
Published on August 6, 2002

3.0 out of 5 stars Essential but insufficient
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... Read more
Published on May 5, 2002

2.0 out of 5 stars Horridly Hard To Read
The author of this book seems to have purposefully obfuscated every paragraph in this book. I had a course in Program Organization a couple semesters ago and this was the... Read more
Published on March 12, 2002 by J. Van Dyk

1.0 out of 5 stars Painful for most students
We had to read this text for Prof. Friedman's Programming Languages course. It was entirely unintuitive and slow reading. I grasped very few of the concepts in the book. Read more
Published on February 9, 2002

5.0 out of 5 stars Essentials of Programming Languages
This book was truly a masterpiece. This is all the concepts of programming you need. After reading this book, all you have to know to learn other languages is style and... Read more
Published on September 30, 2001 by Eric Newton

5.0 out of 5 stars Great book
I used this book in university and studied under Professor Friedman. This book perfect encapsulates the content of our course. Read more
Published on April 15, 2000 by D. Kern

5.0 out of 5 stars Essentials of programming languages
about book catalogue and conten
Published on January 21, 2000 by gang,li

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Discussion Replies Latest Post
textbook scam 79 2 hours ago
Need advice 1 1 day ago
C# or Java? 48 2 days ago
Textbooks for Kindle DX? 71 3 days ago
Desktop for Video Capture. Recommendations? 0 11 days ago
Search Customer Discussions
Search all Amazon discussions
   




Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.