Most Helpful Customer Reviews
11 of 11 people found the following review helpful:
5.0 out of 5 stars
Excellent Book, A Must have., December 21, 1999
This is one of the better books that I read on languages and machines. This book is great for someone who is interested in parsing, compilers or pattern matching. The book covers a lot of theory on computation and is not for a beginner. I would recommend that one be well grounded in set theory, recursion and mathematical induction before attempting to read this book. I did not read all the chapters; I only read those that were relevant to my project and I had not seen before in other texts. The 1st chapter get you upto speed with a good review of set theory followed by a quick review of induction and recursion. The 2nd chapter gives an excellent introduction to strings, languages and regular expressions along with relations on regular expressions. Chapter 3 is where the rubber hits the road. It covers context-free and regular grammars. I feel this chapter covers the subjects very well. Chapter 4 gives a good description of parsing and methods of parsing. Chapter 6 covers Finite Automata. This chapter describes deterministic finite state machines, nondeterministic finite state matchines and nondeterministic finite state matchines with lambda transitions. The presentation of the subject in this chapter was excellent. Chapter 7 presents Regular Languages and Sets. This chapter gives a good presentation of how to put together different types of machines from different languages and build languages from machines. I found it best not to read the chapters in orders, instead I read them in the following order which helped to understand the material better; 1,2,6,7,3,4,11,12 My only complaint: It would have helped if the author could have gave answers to some of the problems at the end of the chapters.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
9 of 9 people found the following review helpful:
4.0 out of 5 stars
A Good Book for a Tough Subject, February 14, 2006
This review is from: Languages and Machines: An Introduction to the Theory of Computer Science (3rd Edition) (Paperback)
Abstract language theory is hard, but Languages and Machines does a very good job of explaining the subject step by step. The topics are covered extremely thoroughly and with just the right amount of rigor. As for those who claim it's not exciting enough, you can't get blood out of a stone. Only the most dedicated computer scientist and mathematicians will find this topic interesting. Even so, this book does a superb job of tying theory to application (e.g., the machines one can use language theory to build) for even the most obscure concepts (like the Greibach Normal Form). That being said, there are a few problems. First, the author's claim that this is a book for undergrads is not credible (except perhaps at MIT or CalTech). Even my graduate students have to read sections multiple times to "get it". Second, the author needs to provide solutions to selected problems at the back of the textbook. Most theory books do this, but not this one. This is a major weakness, especially given the difficulty of the material. Lastly, Sudkamp's proofs are extremely dry and very difficult to follow. He should take a cue from Sipser's "Intro to the Theory of Computation" book (which is generally too abstract for most students) and introduce "proof ideas" to give the big picture for important proofs.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
6 of 6 people found the following review helpful:
4.0 out of 5 stars
Taught by the author!, September 20, 2004
Hey, I was fortunate enough to learn this course from the author of the book. The book by itself might seem tough. The fault lies in the fact that subject matter is not altogether too simple to understand without someone teaching it to you! With the help of the instructor, we did learn a lot about formal languages, finite automaton, regular grammer, etc. The key to understanding this material (and using this book effectively) is solving as many problems as possible, preferably in a group setting so that solutions can be discussed. Note: For most problems, there exists multiple solutions, and the approach is what needs to be learned and discussed. Recommended, with some reservations...Good luck!
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
|