3 ms·
I've read quite a few comments on HN recommending Appel's Modern Compiler Implementation (ML, Java, and C versions exist) over the Dragon Book although I haven'
by spacemanaki 15y ago
I've read quite a few comments on HN recommending Appel's Modern Compiler Implementation (ML, Java, and C versions exist) over the Dragon Book although I haven't read either so I can't vouch for it.
There's this list: http://www.reddit.com/r/compsci/comments/gprp0/is_there_a_list_of_the_canonical_introductory/ http://www.reddit.com/r/compsci/comments/gprp0/is_there_a_li...
I would add Lisp In Small Pieces to the compilers section of that list.
- sb 15y agoQueinnec's Lisp in Small Pieces is a superb book, if you liked that you might also like Henderson's book on implementation of functional PLs (particularly SECD machines.) Regarding the list: I think it's a nice effort, but lacks several excellent and remarkable books. Just quickly browsing, I found the following essential books missing: * In algorithms: - Aho, Hopcroft, Ullman: The Design and Analysis of Algorithms. - Wirth: Algorithms and Data Structures. * In Compilers: - Wirth: Compiler Construction. - Grune, Bal, Jacobs, Cerial: Modern Compiler Design. - Muchnick: Advanced Compiler Design and Implementation. * In Lambda calculus: - Barendregt: Introduction to Lambda Calculus. * In theoretical computer science: - Kozen: Automata and Computability. - Davis: Computability and Unsolvability. * In concepts of PLs: - Turbak, Gifford, Sheldon: Design Concepts in Programming Languages. (In general, the list does not mention any of Wirth's books, which is a shame. The Project Oberon book should also be mentioned in OS stuff, I guess...) Regarding compiler construction: As has been previously mentioned several times on HN, Cooper's and Torczon's "Engineering a Compiler" is a more recent and (IMHO much more readable and accessible) choice.
- shriphani 15y agoI did not like the Java version one bit, (I felt) there's a significant amount of hand-waving in the book. I am however a big fan of Matt Might's lectures : http://matt.might.net/teaching/compilers/spring-2011/ http://matt.might.net/teaching/compilers/spring-2011/ - v beautiful slides, v nice approach overall.