Writing Compilers and Interpreters and over one million other books are available for Amazon Kindle. Learn more

Buy Used
Used - Good See details
$10.56 & eligible for FREE Super Saver Shipping on orders over $25. Details

or
Sign in to turn on 1-Click ordering.
 
   
Have one to sell? Sell yours here
Writing Compilers and Interpreters
 
 
Start reading Writing Compilers and Interpreters on your Kindle in under a minute.

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

Writing Compilers and Interpreters [Paperback]

Ronald Mak (Author)
3.9 out of 5 stars  See all reviews (24 customer reviews)


Available from these sellers.


Textbook Student FREE Two-Day Shipping for students on millions of items. Learn more

Formats

Amazon Price New from Used from
Kindle Edition $56.00  
Hardcover --  
Paperback --  
Paperback, August 10, 1996 --  
There is a newer edition of this item:
Writing Compilers and Interpreters: A Software Engineering Approach Writing Compilers and Interpreters: A Software Engineering Approach 5.0 out of 5 stars (1)
$53.43
In Stock.

Book Description

0471113530 978-0471113539 August 10, 1996 2
Quickly master all the skills you need to build your own compilers and interpreters in C++

Whether you are a professional programmer who needs to write a compiler at work or a personal programmer who wants to write an interpreter for a language of your own invention, this book quickly gets you up and running with all the knowledge and skills you need to do it right. It cuts right to the chase with a series of skill-building exercises ranging in complexity from the basics of reading a program to advanced object-oriented techniques for building a compiler in C++.

Here's how it works:

Every chapter contains anywhere from one to three working utility programs that provide a firsthand demonstration of concepts discussed, and each chapter builds upon the preceding ones. You begin by learning how to read a program and produce a listing, deconstruct a program into tokens (scanning), and how to analyze it based on its syntax (parsing). From there, Ron Mak shows you step by step how to build an actual working interpreter and an interactive debugger. Once you've mastered those skills, you're ready to apply them to building a compiler that runs on virtually any desktop computer.

Visit the Wiley Computer Books Web page at: http://www.wiley.com/compbooks/


Editorial Reviews

From the Publisher

Grab hold of your C++ because here you'll learn how to use it to write compilers and interpreters--those programs that translate high-level computer code into machine-executable code. The only C++-based book on compilers and interpreters available, this revised and updated edition shows you the ABC's of reading and listing a program, breaking it into tokens, parsing it, and examining its syntax. Then it shows you how to build an actual interpreter, debugger, and finally, a compiler.

From the Back Cover

Quickly master all the skills you need to build your own compilers and interpreters in C++

Whether you are a professional programmer who needs to write a compiler at work or a personal programmer who wants to write an interpreter for a language of your own invention, this book quickly gets you up and running with all the knowledge and skills you need to do it right. It cuts right to the chase with a series of skill-building exercises ranging in complexity from the basics of reading a program to advanced object-oriented techniques for building a compiler in C++.

Here's how it works:

Every chapter contains anywhere from one to three working utility programs that provide a firsthand demonstration of concepts discussed, and each chapter builds upon the preceding ones. You begin by learning how to read a program and produce a listing, deconstruct a program into tokens (scanning), and how to analyze it based on its syntax (parsing). From there, Ron Mak shows you step by step how to build an actual working interpreter and an interactive debugger. Once you've mastered those skills, you're ready to apply them to building a compiler that runs on virtually any desktop computer.

Visit the Wiley Computer Books Web page at: http://www.wiley.com/compbooks/

Product Details

  • Paperback: 864 pages
  • Publisher: Wiley; 2 edition (August 10, 1996)
  • Language: English
  • ISBN-10: 0471113530
  • ISBN-13: 978-0471113539
  • Product Dimensions: 9.1 x 7.4 x 2 inches
  • Shipping Weight: 2.8 pounds
  • Average Customer Review: 3.9 out of 5 stars  See all reviews (24 customer reviews)
  • Amazon Best Sellers Rank: #618,093 in Books (See Top 100 in Books)

More About the Author

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

 

Customer Reviews

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

90 of 94 people found the following review helpful:
2.0 out of 5 stars Mak is useful, but do use it with caution., April 15, 2000
By 
Sean Osullivan (Fredericksburg, VA) - See all my reviews
(REAL NAME)   
This review is from: Writing Compilers and Interpreters (Paperback)
There are several things you should know about this book:

1) The book implements a top-down or recursive-descent parser, as opposed to a standard shift-reduce parser. This is *very* important, as lex/yacc, Visual Parse++, and other parsing tools are efficient shift-reduce macines. Thus, the parser isn't really portable. Even so, I did find the the symbol table design that's used by the parser to be critical for what I needed.

2) The printed material is mostly (say 70%) code listings, thus even though the book is a whopping 838 pages, it would be much slimmer with fewer listings. The code is downloadable from the pusblisher's (Wiley) site.

3) The 30% of text and figures that are in the book could be much more insightful. For example, Chapter 11 - the interactive debugger should at least have some description (screenshots perhaps) of how to use the debugger. (Hint, the commands end with a semi-colon.)

4) Even though this book is C++ oriented, it doesn't use standard containers like linked lists, or trees (maps/sets). The classes have pointers in them that makes the class also act as a its own node in a list or whatever. This makes the design much more confusing than it needs to be.

5) The symbol table implementation has heavy circular dependencies. Quite honestly I don't know of a better implementation (yet). This does, however pose a problem if you'll need to extend the design (to use STL containers, to self-serialize, etc.)

The book has been a godsend, but I couldn't honestly let the 4 and 5 star reviews sit unchallenged. If I had known the above sooner, I could have saved quite a few weekends.

I think an Ideal Writing Compilers book would come bundled with a thirty day version of Visual Parse++ or Dr. Parse, and work from there.

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


14 of 14 people found the following review helpful:
4.0 out of 5 stars Good, Maybe a little too focused on one solution., June 16, 1999
This review is from: Writing Compilers and Interpreters (Paperback)
The book describes step-by-step how the author would write a compiler for PASCAL. It could do with some more explanations of the logic behind some of the decisions,as it tends to quickly explain what the following C++ code does,before launching into pages of (well written) programming. If you have been tasked to write a specific compiler, then this book is probably what you want to get. If you are wanting to further your knowledge of the art, then you would be better looking at some of the more weighty volumes.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


11 of 11 people found the following review helpful:
5.0 out of 5 stars Excellent Treatment of a Tough Subject, September 27, 2001
This review is from: Writing Compilers and Interpreters (Paperback)
I bought this book in 1996 when I was a CS graduate student. The course text was the traditional "dragon book" which is a complete nigthmare to understand. I read this book in hopes of better understanding how compilers and interpreters are implemented and to this day I feel like I hit the jackpot.

The book focuses primarily on the practical implementation of language interpreters and compilers and includes the code (C++) for a full featured Pascal interpreter (not just a minimal implementation that interprets a few statements). The author walks the reader through each class virtually line by line and presents the material in a way that any intermediate level C++ developer can easily understand.

Notwithstanding the pragmatic focus of this book, it also provides excellent treatment of the theory of compiler design. While it is at least 5 years old, I still keep this book in my library.

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



Inside This Book (learn more)
First Sentence:
In this chapter, we begin writing the front end of our Pascal compiler or interpreter by creating two fundamental objects. Read the first page
Key Phrases - Capitalized Phrases (CAPs): (learn more)
Ronald Mak, Simple Executor, Directory Main, Fri Oct, Module Table, Get Extract, Statements Member, Pascal Pretty-Printer, Constructor Construct, Destructor Deallocate, Example Pascal, Sun Nov, Fri Jan, Statement Member, Thu Oct, Wed Dec
New!
Concordance | Text Stats
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Back Cover | Surprise Me!
Search Inside This Book:

Citations (learn more)
This book cites 1 book:
 
2 books cite this book:


Tags Customers Associate with This Product

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

Your tags: Add your first tag
 

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



So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject