Structure and Intepretation of Computer Programs vs Compilers: Principles, Techniques, and Tools (2nd Edition)
When comparing Structure and Intepretation of Computer Programs vs Compilers: Principles, Techniques, and Tools (2nd Edition), the Slant community recommends Structure and Intepretation of Computer Programs for most people. In the question“What are the best resources to learn about compiler construction?” Structure and Intepretation of Computer Programs is ranked 2nd while Compilers: Principles, Techniques, and Tools (2nd Edition) is ranked 3rd. The most important reason people chose Structure and Intepretation of Computer Programs is:
This isn't a book you'll glean direct practical tidbits out of, an introduction to not only functional programming but how to think in a paradigm outside the usual way C*/Python/Ruby/Java/etc... are coded. Even if you wind up never working in Scheme or any other primarily functional language, the tactics and thought processes you'll learn here will apply to any currently-evolving language to a greater or lesser degree. You'll be able to map your thought process into the paradigm that works best for your current situation and not just be forced into a limited set of idioms that causes unnecessary boilerplate and clunky code mangling.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Knowledge can be applied to any language
This isn't a book you'll glean direct practical tidbits out of, an introduction to not only functional programming but how to think in a paradigm outside the usual way C*/Python/Ruby/Java/etc... are coded.
Even if you wind up never working in Scheme or any other primarily functional language, the tactics and thought processes you'll learn here will apply to any currently-evolving language to a greater or lesser degree. You'll be able to map your thought process into the paradigm that works best for your current situation and not just be forced into a limited set of idioms that causes unnecessary boilerplate and clunky code mangling.
Pro Teaches very important programming concepts
Like closures and encapsulation without language support of objects.
Pro Very good for absolute beginners
This book gives a great insight about immutable and mutable state (with pros and cons), typisation, FP, OOP, and many other things in a very beginner-friendly manner
Pro Comprehensive
This book covers a wide variety of topics relating to compilers. Explanation are detailed with plenty of examples and exercises provided.
Pro Preferred among developers
"The Dragon Book" is frequently used in university courses and often the resource of choice by experienced developers.
Cons
Con Issues with Kindle version
There are issues present in the Kindle version that are not in the paper book. An error with an algorithm, and many formatting concerns have been noted.