Home :: Books :: Computers & Internet  

Arts & Photography
Audio CDs
Audiocassettes
Biographies & Memoirs
Business & Investing
Children's Books
Christianity
Comics & Graphic Novels
Computers & Internet

Cooking, Food & Wine
Entertainment
Gay & Lesbian
Health, Mind & Body
History
Home & Garden
Horror
Literature & Fiction
Mystery & Thrillers
Nonfiction
Outdoors & Nature
Parenting & Families
Professional & Technical
Reference
Religion & Spirituality
Romance
Science
Science Fiction & Fantasy
Sports
Teens
Travel
Women's Fiction
Compilers

Compilers

List Price: $102.00
Your Price: $96.90
Product Info Reviews

<< 1 2 3 4 5 >>

Rating: 5 stars
Summary: Dragon Book == Compiler Bible, advice to compiler newbies
Review: I'm a graduate student doing PhD work in compilers and this is the first book we make new students read. It is an exhaustive compendium of all the basics with particular emphasis on front end stuff like parsing, and lexing. While these are primarily automated processes these days, this foundation is crucial to build the rest of your knowledge on. My advice, buy this book and read it fully to lay a foundation. Then get Steven Muchnick's book to bring yourself up to the bleeding edge. Muchnick is more practical minded, but read this first. Like the other reviews, i can't say enough about the quality of this book.

Rating: 4 stars
Summary: Excellent book for a first course in compiler construction
Review: If you are getting into compiler construction today, you will see a lot of "cutting edge" stuff which discusses minute details of optimization but assumes you are already versed in the art. You may also see a few "baby books" that don't require any real background but also don't give you any real depth.

This is the Standard reference on compiler construction. It assumes you are familiar with programming, and it gives you enough tools and techniques to write good compilers. More importantly, it is the book that will give you the grounding in terms of art and technique that more recent works require for comprehension.

In short, this is the book that can take you from knowing programming to knowing how to build compilers. There are cutting edge things it doesn't cover, but it gives you the knowledge to understand them when you get to them.

Rating: 3 stars
Summary: Not well written
Review: If you find yourself struggling with this book, it is probably
not your fault. The book is not well written or well organized.
The chapters don't build on each other, so you might as well
dip into it wherever your fancy strikes. The chapters are
simply piles of information: there is no synthesis. The
reader has do all the work of putting it together.

Just a small, irritating example of what the book is
missing: the authors mention "context-free grammars"
over and over from the very start, but if you want to
find out what the term signifies, you need to hunt with
the help of the index until you come upon a poor explanation
somewhere in the middle of the book. And context grammars
are never explained at all, even though they are mentioned.

The reader is left with the impression that she or he should
somehow know already what these grammars are (in fact,
grammars are not explained, either!).

A lot has been learned about compilers since this book was

written, so it's time to retire this chestnut
and start anew.

Rating: 3 stars
Summary: Not well written
Review: If you find yourself struggling with this book, it is probably
not your fault. The book is not well written or well organized.
The chapters don't build on each other, so you might as well
dip into it wherever your fancy strikes. The chapters are
simply piles of information: there is no synthesis. The
reader has do all the work of putting it together.

Just a small, irritating example of what the book is
missing: the authors mention "context-free grammars"
over and over from the very start, but if you want to
find out what the term signifies, you need to hunt with
the help of the index until you come upon a poor explanation
somewhere in the middle of the book. And context grammars
are never explained at all, even though they are mentioned.

The reader is left with the impression that she or he should
somehow know already what these grammars are (in fact,
grammars are not explained, either!).

A lot has been learned about compilers since this book was

written, so it's time to retire this chestnut
and start anew.

Rating: 2 stars
Summary: The most overrated classic
Review: If you study langages and compiler design, you WILL hear about "the dragon book". Yet, it is the worst book I've read on the subject. Very difficult to follow, and it seem you just cant find what you want to.

Rating: 3 stars
Summary: Very abstract.
Review: In my reading of this text, I found that a large quantity of the information drifted between "repedative" and "abstract."

The text discusses tokens, identifiers and such, but fails to explain means of how it would extract such components.
It almost feels as if it is a thesis on the subject rather than a practical text. Add to this the teder-todering between C, pascal and assembly for examples of code. (Which requires you to deciper the example code.)

If you're not after practical application, this is probably going to be a good text for you. Otherwise, I feel it is not worth the money.

Rating: 2 stars
Summary: Dry as Gin
Review: My graduate compiler class used this book. I hated it. The book is dry and seems to be disorganized to the untrained eye. Many of the examples are either incomplete or the bare min.

Rating: 3 stars
Summary: This book is somewhat overrated.
Review: Of the "classics" in computer science, this one is the worst. It is poorly written and difficult to follow. Concepts are inadequately explained. There is no logical progression of ideas. Fundamental principles are mixed with details, and there is no sharp distinction between the two. One gets the impression that Aho has an excellent command of compilers but a poor command of English.

The book has a great many redeeming advantages. It is very dense, it contains alot of material, and it is quite comprehensive. However the other classics manage to be dense and explanatory at the same time (K&R, Structure & Interpretation of Comp. Programs).

This book would make a good reference or a good adjunct to a class. It is a bad explanation. People looking to learn compiler construction from a book alone should look elsewhere.

Rating: 5 stars
Summary: The reference book ... depending on your needs
Review: Once again, I want to point out the title of the book: "Principles, Techniques and Tools".
I think there are two kinds of compilers books available today: "Principles and Theory centered" ones and "Modern Compilers design and implementation" ones.
One might wonder what's the difference between the two.

The former kind is more suited for a course on theoretical aspects that lay the foundation of compiler construction. DFAs, NFAs and Regular expression along with relations and equivalence between the them; FSAs minimizations; grammars and Push-down FSAs in details, ambiguities and and how to cope with them; and so on.
This is what I mean for "theoretical aspects". And these topics are covered in great details in this book. Almost the same details they (the authors) placed on writing a more specific book as "Introduction to Automata Theory ...".
Same situation applies to principles on more application- oriented topics. Take the example of LR parsing. You can face the topic from a more theoretical side, dealing with details on bottom up parsing (still, it implies an in-depth knowledge of grammars theory), handles and (viable) prefixes, SLR or canonical LR or LALR parsers and techniques for the relative tables construction by hands (and for this, add a detailed and solid knowledge of Push-down FSAs along with grammars). By hands, at least, if principles are what matter in your course.
If you expect to find these topics (with this depth) in a book of the other kind, you might get mislead. As I did when I still had not clear this distinction, before I took the course.

The latter kind of books is more suited for a more pragmatic course. One where real, "modern" compilers are at hands, and probably written as homeworks. In this case, time being always limited in a university course, one (the instructor) will likely have to give up with those theoretical aspects (or just mention them) and focus on coding techniques and modern compiler studying. But ... perhaps, for these purposes books like Grune's "Modern Compiler Design", or Pittman's "Art of Compiler Design, The: Theory and Practice" or, at some degrees, Muchnick's "Advanced Compiler Design and Implementation" will be more suited.
Back to the LR parsing example, more pragmatic compilers design courses will (for time constraints) just have a glance on principles and spend a considerable time learning YACC. To do both things you would have to take a course on YACC alone (it requires time to exploit all of its advanced features, you can be sure of this).

All this said, once again: which is the best book ? The one that best fits your needs. And in fact, my needs were those of my course, which was completely centered on theoretical aspects. And for this course, the Dragon book (as it is better known since its cover) proved to be perfect, definitely no matter it was published on 1986: FSAs and grammars and their theory is (for all practical purposes) still the same since even before then.

Rating: 5 stars
Summary: The reference book ... depending on your needs
Review: Once again, I want to point out the title of the book: "Principles, Techniques and Tools".
I think there are two kinds of compilers books available today: "Principles and Theory centered" ones and "Modern Compilers design and implementation" ones.
One might wonder what's the difference between the two.

The former kind is more suited for a course on theoretical aspects that lay the foundation of compiler construction. DFAs, NFAs and Regular expression along with relations and equivalence between the them; FSAs minimizations; grammars and Push-down FSAs in details, ambiguities and and how to cope with them; and so on.
This is what I mean for "theoretical aspects". And these topics are covered in great details in this book. Almost the same details they (the authors) placed on writing a more specific book as "Introduction to Automata Theory ...".
Same situation applies to principles on more application- oriented topics. Take the example of LR parsing. You can face the topic from a more theoretical side, dealing with details on bottom up parsing (still, it implies an in-depth knowledge of grammars theory), handles and (viable) prefixes, SLR or canonical LR or LALR parsers and techniques for the relative tables construction by hands (and for this, add a detailed and solid knowledge of Push-down FSAs along with grammars). By hands, at least, if principles are what matter in your course.
If you expect to find these topics (with this depth) in a book of the other kind, you might get mislead. As I did when I still had not clear this distinction, before I took the course.

The latter kind of books is more suited for a more pragmatic course. One where real, "modern" compilers are at hands, and probably written as homeworks. In this case, time being always limited in a university course, one (the instructor) will likely have to give up with those theoretical aspects (or just mention them) and focus on coding techniques and modern compiler studying. But ... perhaps, for these purposes books like Grune's "Modern Compiler Design", or Pittman's "Art of Compiler Design, The: Theory and Practice" or, at some degrees, Muchnick's "Advanced Compiler Design and Implementation" will be more suited.
Back to the LR parsing example, more pragmatic compilers design courses will (for time constraints) just have a glance on principles and spend a considerable time learning YACC. To do both things you would have to take a course on YACC alone (it requires time to exploit all of its advanced features, you can be sure of this).

All this said, once again: which is the best book ? The one that best fits your needs. And in fact, my needs were those of my course, which was completely centered on theoretical aspects. And for this course, the Dragon book (as it is better known since its cover) proved to be perfect, definitely no matter it was published on 1986: FSAs and grammars and their theory is (for all practical purposes) still the same since even before then.


<< 1 2 3 4 5 >>

© 2004, ReviewFocus or its affiliates