A tutorial that will take you through the various phases of compilers and guide you on how to create these phases. By the end you would have a full blown functional compiler. You would require lex,yacc and python/c++ programming skills.
(Can be categorized as front end and back end).
1] Lexical Analyzer.
2] Syntax Analyzer.
3] Semantic Analyzer.
4] Intermediate Code Generator.
5] Machine Independent Code Optimiser.
6] Code Generator.
7] Machine Dependent Code Optimiser.