Reddit reviews Modern Compiler Implementation in Java
We found 9 Reddit comments about Modern Compiler Implementation in Java. Here are the top ones, ranked by their Reddit score.

Cambridge University Press
I just taught a compilers class. I've been posting my lecture notes on my blog (with many more to come); these might be useful to you:
I recommend writing a Scheme compiler first, and I'd use Lisp in Small Pieces instead of the Dragon book.
The Appel books are also a good treatment of compiler writing.
Try writing a recursive descent parser by hand first. This is a manageable endeavor for a Scheme-like language. I wouldn't bother with ANTLR for a second attempt; I'd use one of the hot parser combinator libraries instead.
In total, a good first compiler project would be something like:
You could then retarget to x86 if you write a register allocator.
Good luck!
This is a good list. I'd definitely not go for Winskel's book, and I'd skip the Dragon book because I think it is quite out of date (nothing on type systems, or first-class functions or even objects).
For languages, I'd go with Andrew Appel's Modern Compiler Implementation in Java (or "in ML"), and for language semantics, I'd go with
Semantics with Applications: An Appetizer, followed by Pierce's Types and Programming Languages (TAPL).
Also, Knuth's Concrete Mathematics is very very good, but is heavily skewed towards number theory. It is a must-read if one's interests are in crypto, but won't help you at all if for example, you want to work with databases, theorem proving, programming languages etc. You need a solid set theory foundation. Or if you were interested in graphics or machine learning, I'd go for a solid linear algebra foundation.
There are no systems books on your list, so I'd suggest one on operating systems: it is free and very good.
Operating Systems: Three Easy Pieces
> Modern Compiler Implementation in Java
One question about this book. Everyone here bitches about how the code sucks on that one because Appel tried to write Java as if it was SML. It seems, however, that people here are talking about the first edition. Palsberg made a lot of improvements in the second edition to the code:
http://www.amazon.com/Modern-Compiler-Implementation-Andrew-Appel/dp/052182060X
Has anybody here read the second edition?
I've peeked at this free online book a few times when implementing things. I think it's a pretty solid reference with more discussion of these sorts of things!
Another option is a "real" textbook.
My programming languages course in university followed Programming Languages: Application and Interpretation (which is available online for free). It's more theory-based, which I enjoyed more than compilers.
But the dragon book is the go-to reference on compilers that is slightly old but still good. Another option is this one, which is a bit more modern. The latter was used in my compilers course.
Outside of that, you can read papers! The older papers are actually pretty accessible because they're fairly fundamental. Modern papers in PL theory can be tricky because they build on so much other material.
Here are few more advanced books that I highly recommend after you learn the basics and want to really implement something.
​
- Modern Compiler Implementation in Java 2nd Edition
- Advanced Compiler Design and Implementation 1st Edition
​
Also here is a link to a GitHub page with tons of compiler related resources. awesome-compilers
When I took my Compilers class, I found that Appel's "tiger book" (http://www.amazon.com/Modern-Compiler-Implementation-Andrew-Appel/dp/052182060X) was a more down-to-earth complement to the dragon book.
please don't use url shorteners, it tends to get caught in the spam filter. For anyone wondering, his link goes here.
Yeah, it costs a fair amount to get a half decent lab together but once you do!
Instead of electronics, what about getting a book that takes you through a software project and work your way through that. If you wanted to build a compiler for a language then there is plenty of choice, e.g.:
http://www.amazon.com/Modern-Compiler-Implementation-Andrew-Appel/dp/052182060X/ref=sr_1_1?ie=UTF8&qid=1427095404&sr=8-1&keywords=compiler+design+java
http://www.amazon.com/Modern-Compiler-Implementation-Andrew-Appel/dp/0521607655/ref=la_B000AP5X0W_1_5?s=books&ie=UTF8&qid=1427095531&sr=1-5
http://www.amazon.com/Modern-Compiler-Implementation-Andrew-Appel/dp/0521607647/ref=la_B000AP5X0W_1_1?s=books&ie=UTF8&qid=1427095531&sr=1-1
There's other books for other types of project.
Compilers at Marquette? I remember the worst part was the awful Tiger textbook