Have one to sell? Sell yours here
Essentials of Programming Languages
  
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Essentials of Programming Languages [Hardcover]

Daniel Friedman (Author), Mitchell Wand (Author), Eugene Kohlbecker (Author)
3.7 out of 5 stars  See all reviews (17 customer reviews)


Available from these sellers.


Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
Hardcover $62.00  
Hardcover, February 1, 1992 --  
Paperback --  

Book Description

0070224439 978-0070224438 February 1, 1992
Designed for the upper division Programming Languages course offered in computer science departments, this text focuses on the principles of the design and implementation of programming languages. The language SCHEME, a dialect of LISP, is used to demonstrate abstraction and representation.

Customers Who Bought This Item Also Bought


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. --This text refers to an out of print or unavailable edition of this title.

Product Details

  • Hardcover: 448 pages
  • Publisher: MIT Press (February 1, 1992)
  • Language: English
  • ISBN-10: 0070224439
  • ISBN-13: 978-0070224438
  • Product Dimensions: 9.3 x 8.3 x 1.5 inches
  • Shipping Weight: 3 pounds
  • Average Customer Review: 3.7 out of 5 stars  See all reviews (17 customer reviews)
  • Amazon Best Sellers Rank: #2,802,828 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and 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

31 of 32 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.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


40 of 43 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.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


20 of 23 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.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

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











Only search this product's reviews



What Other Items Do Customers Buy After Viewing This Item?


Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product).
 
(41)
(61)
(12)

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 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
Search Customer Discussions
Search all Amazon discussions
   
Related forums





Look for Similar Items by Category


Look for Similar Items by Subject

Search Books by subject:





i.e., each book must be in subject 1 AND subject 2 AND ...