Less Wrong is a community blog devoted to refining the art of human rationality. Please visit our About page for more information.

rwallace comments on The Best Textbooks on Every Subject - Less Wrong

167 Post author: lukeprog 16 January 2011 08:30AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (327)

Sort By: Popular

You are viewing a single comment's thread.

Comment author: rwallace 16 January 2011 05:25:26PM 10 points [-]

General programming: Structure and Interpretation of Computer Programs. Focuses on the essence of the subject with such clarity that a novice can understand the first chapter, yet an expert will have learned something by the last chapter.

Specific programming languages: The C Programming Language, The C++ Programming Language, CLR via C#. Informative to a degree that rarely coexists with such clarity and readability.

AI: Artificial Intelligence: a Modern Approach. Perhaps the rarest virtue of this work is that not only does it give about as comprehensive a survey of the field as will fit in a single book, but casts a cool eye on the limitations as well as strengths of each technique discussed.

Compiler design: Compilers: Principles, Techniques and Tools. The standard textbook for good reason.

Comment author: Mimi 19 March 2012 02:38:34AM *  1 point [-]

Disagree with "C++ the programming language" as a C++ textbook. Anything by Lippman, Koenig or Moo would be better.

Comment author: barrkel 17 January 2011 12:33:53PM 9 points [-]

I don't agree on the dragon book (Compilers: Principles, Techniques and Tools). It focuses too much on theory of parsing for front end stuff, and doesn't really have enough space to give a good treatment on the back end. It's a book I'd recommend if you were writing another compiler-compiler like yacc.

I'd rather suggest Modern Compiler Implementation in ML; even though there are C and Java versions too, a functional language with pattern matching makes writing a compiler a much more pleasant experience.

(I work on a commercial compiler for a living.)

Comment author: Mimi 19 March 2012 02:37:36AM 0 points [-]

+1 for ML (and purely functional languages) used for implementing compilers.

Comment author: [deleted] 16 January 2011 05:41:43PM 4 points [-]

Is "The C Programming Language" Kernighan & Ritchie? (titles are often very generic so it's nice to see authors as well.)

Comment author: rwallace 16 January 2011 05:46:23PM 1 point [-]

Yes.

Comment author: lukeprog 16 January 2011 05:35:07PM 3 points [-]

rwallace,

Thanks for your recommendations! Your comment made me realize I was not specific enough in my list of rules, so I modified the third rule to the following:

"You must briefly name the other books you've read on the subject and explain why you think your chosen textbook is superior to them."

Would you please do us the favor of naming the other books you've read on these subjects, and why your recommendations are superior to them? That would be much appreciated.

Comment author: rwallace 16 January 2011 05:44:50PM 1 point [-]

A problem is that in many cases it was long enough ago (e.g. I got into C programming in the 1980s, C++ around 1990) that I don't remember the names of the other books I read. The ones that stuck in my mind were the memorably good ones. (Memorably bad things can do likewise of course, but few textbooks fall into that category -- the point of this post after all is that textbooks tend to have higher standards than most media.)