4 ms·
A good start. But a lot of really important and approachable stuff is missing from the list. On SSA, for example, the best introduction is S. Pop thesis: http:
by sklogic 11y ago
A good start. But a lot of really important and approachable stuff is missing from the list.
On SSA, for example, the best introduction is S. Pop thesis: http://www.cri.ensmp.fr/people/pop/papers/2006-12-thesis.pdf http://www.cri.ensmp.fr/people/pop/papers/2006-12-thesis.pdf
- andrewchambers 11y agoPlease post as many good resources as you can, i'm sure they can be added.
- sklogic 11y agoFar from a comprehensive list, just the stuff I could remember straight away: Nanopass: http://www.cs.indiana.edu/~dyb/pubs/nano-jfp.pdf http://www.cs.indiana.edu/~dyb/pubs/nano-jfp.pdf http://andykeep.com/pubs/np-preprint.pdf http://andykeep.com/pubs/np-preprint.pdf An extremely useful technique, somewhat related to what Sebastian Pop was doing with Prolog in his thesis: http://people.csail.mit.edu/mcarbin/papers/aplas05.pdf http://people.csail.mit.edu/mcarbin/papers/aplas05.pdf also http://www.cs.cmu.edu/~aldrich/courses/654/tools/bierhoff-bddbddb-05.pdf http://www.cs.cmu.edu/~aldrich/courses/654/tools/bierhoff-bd... All such things may be inappropriate for the top notch commercial compilers due to a limited performance, but are great for DSLs and for an amateur work, because they're so much easier than an ad hoc hand-coded approach. On LLVM specifically, can be used as a nice introduction into how backend works: http://eli.thegreenplace.net/2012/11/24/life-of-an-instruction-in-llvm http://eli.thegreenplace.net/2012/11/24/life-of-an-instructi...