[2001-09-16]
Writing Compilers and InterpretersAn Applied Approach Using C++ By Ronald Mak
|
||
|---|---|---|
|
First, they're not kidding about the "Applied" part. A sizeable portion of the book is C++ source code. Very very nice looking source, granted. This is sort of the anti-part of the Dragon book. Again, I'm very impressed by the state of the source presented; it's some of the most beautiful C++ I've ever seen (which might not be saying much, OTOH). Ronald really cleared some things up for me with his OO-graphs of how the parts of an interpreter connects to each other, but even so I'm a little torn, actually, because I want to like this book (I bought it, it's only natural) and while the source is beautiful (for the most part, Mak makes a bad habit of including c-style headers instead of c++ headers, and he doesn't use the STL or the std::string-class, opting instead for ugly pchars), and the diagrams are great, I must also admit that my feeling now, a couple of months after reading it, is that there's too little theory and too much code in it. But then, I'm the kind of person who enjoys reading theory. Basically, to have any use of this book you must have a theoretical ground to stand on (note: the author does not agree with this) -- but as a complement to the Dragon it is a fair book, especially if you're a C++ programmer. I'm fairly sure I'll go back to this book for inspiration when I write my interpreter. | |
Applied CryptographyProtocols, Algorithms and Source Code in C
|
||
|---|---|---|
|
The classic introduction to modern cryptographics protocols and their implementation. I don't have much to say about this one, and really, it's been reviewed a million times. It's a very good book, with a good balance between theory and practice. It's the kind of book you can use if you are thinking "I need a protocol that does A, B and C, wonder if something like that exists?" - you can look it up, and then use the extensive references (1600+ entries) to dig for more information. | |
The Code-BreakersThe comprehensive History of Secret Communication from Ancient Times to the Internet By David Kahn
|
||
|---|---|---|
|
This is one of those classic cryptography books, one that you must have read if you are at all interested in the field, and I can only concur. The Code-breakers is a really good book. Through twenty-seven chapters and some 1100+ pages, you are guided through the history of secret communication. Not only are you guided through the history, but you are also taught some of the early techniques of cryptanalysis, and concepts such as randomness and entropy as they pertain to the subject of information theory are explained. Never dull or boring, I read it straight through. One cannot help but be impressed by the amount of research that must have gone into this book, with the history narrated in such detail, and for those hungering for more, there's almost a thousand references to follow up on. One important note though, do buy this book if you want a historic account, from 3000 BCE to the second world war. This is a book on history, not current events or current technology, and I say this owning the "revised and updated" version.
That said, I have a very high regard for this book, it's simply a great read. |
|
CompilersPrinciples, Techniques and Tools By Alfred V. Aho, Ravi Sethi & Jeffrey D. Ullman
|
||
|---|---|---|
|
I really don't feel like writing a whole lot about this book. Everyone who's interested know about it already, and the rest of you just don't care. Just in case anyone missed it, let me just reiterate that this is a classic work on compiler construction. A simple must have if you are into that sort of thing. If you are real cheap, like me, you will also appreciate how long this work will last you. I've read it through once, but I could probably read it once or twice again and discover new things that I missed the other times around. In short, great value for your money. In fact, this book is so good that it's been dominating it's niche since the middle of the 80s, and is still heavily used in teaching. |
|
The Waite Group's C++ Primer Plus, 3:ed
|
||
|---|---|---|
|
(I read the Swedish translation of this book). This is not at all a bad book. It totals some 950 or so pages, of which the first 700 or, divided into 16 chapters, make up the bulk of the book. The rest is different appendices, such as tables of keywords, ASCII, operator precedence and a special look at the string-class. The table of contents is good, and each chapter begin with a small table listing what you will learn reading it, so finding stuff is as easy as it can get. The ratio between descriptive text and source-code is good, with not too much source, just enough the show off important concepts. The source can be downloaded off the web, which can never be a minus. A minus, however, is the errors. I counted some ten or so errors in the book, most of which did not seem to be translation errors (though some certainly were). Nothing big though, if you actually understand what you are reading then the errors will stand out as beacons. All the important stuff is in there; some of the basics, oop-concepts, pointers, references, exceptions, templates, STL and a special look at the iostream and string classes. Basically, this book covers the span from beginner to intermediate. The problem is that it really only scratches the surface, and many simple things that a beginner will need to know isn't even included. For instance, I wanted to know how to convert between numbers and strings (the C++ way, using streams), but no such info was present (that I could find, anyway). In fact, this book suffers from the let's use "cout" for everything-syndrome. Yes, the standard output stream is very handy because it overloads almost everything, but in real life not everything is meant to go to stdout, and many such things, especially going from a string to a number representation of data, are not covered in this book (that I could see). Sure, it's supposed to teach the language first and foremost, not the libs, but it does go into the string-class and file I/O, both sequencial and random-access, so a more in-depth look at some of the most commonly used library functions would be a good addition. I don't think I'd buy this book. I borrowed it from the library and it really isn't extensive enough to be used as a reference, not after the first few week of programming anyway. However, as a book to get up to speed on C++, when you already know programming in general, it's quite good, and I'm not sorry I read it. |
|
Where Wizards Stay Up LateThe origins of the Internet By Katie Hafner & Matthew Lyon
|
||
|---|---|---|
|
Oooh, I really enjoyed this one. I'm a real sucker for computer and computing history, as witnessed by my constant evangelization of Levy's Hackers book. Anyway, the sub-title sort of says it all, this book tells the story about how the Internet came to be. Like the aforementioned book by Levy, this is a real page-turner, ending in an epilogue at page 257 (how appropriate!) describing the BBN 25:th anniversary of the installation of the first ARPANET node at UCLA in 1969. There are numerous mini-biographies on the influential men who did the base research and brought it all together with the building the first IMPs and setup of the first nodes of the net. Can't think of anything really bad about this book off hand. There's even a 15-page bibliography in there for those wanting to do further research or check on things. Anyone working with anything Internet-related should read this book. Especially those out to make a quick buck. I don't think the Hacker Ethic is mentioned once, but you can glimpse it, between the lines. |
|
The Demon Haunted WorldScience as a candle in the dark By Carl Sagan
|
||
|---|---|---|
|
In this book Dr Carl Sagan argues the case for scientific thinking. Over some 25 chapters (about 400 pages) the benefits of a critical mind and the self-correcting nature of scientific thinking is drummed against us. Now, don't think I do not agree, I do, but if I had to question anything about this book it would have to be; whom is it for? For a reader such as myself, it's a little like preaching to the choir, and the fundamentalists and the swindlers and frauds, well, they won't change by reading this book. Maybe this book is the perfect gift for young people though, like age 14-20 (adjust for reader maturity). Actually, the class-room might be the perfect place for this book, have them all read it. Let's return to the contents. Throughout the book Sagan brings up superstitions and frauds, like witches/UFO/ESP/Faith Healing/etc and debunks them, or tells the story of how they have been debunked by others (such as James Randi). The theme is that science makes for a better world whereas pseudo-science doesn't, and really, who can argue with that? All in all this book is a worthwhile read, even a <cough> seasoned sceptic and freethinker like myself learned a thing or two. If you get a copy, after reading it, consider giving it to someone you think of as not-so-sceptic. Who knows, maybe you'll make a sceptic out of them, and that would be 8UKP well spent. |
|
©1998, 1999, 2000, 2001 Eddy L O Jansson. All rights reserved. All trademarks acknowledged.