Rating:  Summary: Not bad, but not great. Review: The book was decent. We used it for an intermediate CS class on programming language concepts, and it did the job ok. I thought there was too much emphasis on the history of CS, and not enough on the actual concepts. Thankfully, I had an awesome professor and the class turned out great. Some weak points: lots of people seemed to have trouble with attribute grammars, the book's explanation was not good enough. And there were a few remarks about Java which were completely erroneous.
Rating:  Summary: Too much Ada and Pascal Review: The concepts were described pretty well but there was too much emphasis on useless programmming languages. Although I realize this is a book on computer programming, they could have tried to make it a little more colorful. A mug shot of dorky computer scientists at the beginning of each chapter is not my idea of effective visual aid.
Rating:  Summary: Fire the editor! Review: This book doesn't do much for the student... What good are exercises without answers? A strong glossary also would help infinitely. You do need a great deal of prior experience in C based languages to really benefit from the examples.
Rating:  Summary: From A Student Review: This book doesn't do much for the student... What good are exercises without answers? A strong glossary also would help infinitely. You do need a great deal of prior experience in C based languages to really benefit from the examples.
Rating:  Summary: Good, but I wish it covered more language theory Review: This book was good for my undergrad programming-languages class, but it didn't help us in our study of attribute grammers, nor was the explanation and examples of BNF and EBNF as extensive as they could have been. Also I was dissapointed the examples as they were all very simple (see Chapter 3's section on Denotational Semantics).It is true that it says some silly stuff about Java - but that seems to be pretty typical of most text books these days.
Rating:  Summary: Semi-useful survey of programming languages Review: This book will not make you understand the basic ideas behind programming languages, and you won't be able to shy away from math as Sebesta's book does. For that, you will need other books. This book, however is useful inasmuch as it provides a survey of some programming languages. However, it is heavily biased towards imperative programming languages. Even here the balance is wrong, with a lot of Ada and Pascal. IIRC, he forgets to mention Forth, which is old, but a totally different way to program than the other languages. On the other hand, anything he has to say about any other type of paradigm will be, probably, wrong. For instance, his description of Lisp remains in the 1950s ("interpreted, everything is a list"). He entirely ignores the Common Lisp Object System, which is by far much more advanced that your staple "OOP" language. The Smalltalk environment he shows is Smalltalk-80. Meaning: the environment used *then*. His description of Functional languages is a joke. So one gets the feeling he doesn't know what he is talking about. And he doesn't. He missed a lot of development that went on in programming language research and their implementation. He can't get right new developments in programming except things that are mainstream. In the new edition, he approaches Java, as if garbage collection, object orientation and bytecodes were something new (Smalltalk, Common Lisp almost 20 decades ago). If he's missed all that, let's not even begin to talk about the very new breed, like fast-compiling functional languages (Clean, OCaml), languages that allow reflection and metaprogramming (e.g., Maude), languages built for distributed programming (Oz, Erlang), etc. If you buy this book, it should be only for the value of having a rather general, limited, historical overview of some programming languages. If you really want to learn about the ideas behind a programming language, you should read Structure and Interpretation of Computer Programs (the classic, now updated), and Concepts, Techniques, and Models of Computer Programming (the "new" classic).
Rating:  Summary: One of the best books of Programming Languages Review: This is one of best books of Programming Languages I know. I use it as basic bibliography to teach Programming Languages in a College in Brazil. This book must be compared with the books of Terrence Pratt, Guezzi and Watt among others. This book do not intend to be a book to teach any language like C or Java. This books is a book to explain issues about the design of languages. (Sorry for my english mistakes)
Rating:  Summary: Good book Review: This is very interesting book in which you can find interesting information about history of programming languages, as well as most relevant consepts used for building language compilers.
The problem of this book is not in the matter that is presented in the book, but in the way it is presented. The biggest problem is in the typos and mistakes made in the text. It is strange that this 6th edition of the book contains so many typos and mistakes.
Regardless the drawbacks that are said before, I recomand this book for buying. Anyone who is interested in programmming and programming languages will surely find interesting information in this book.
|