Compiler Development
This is a collection of resources on compiler construction, programming language design, and related topics.
Compiler Resources
- Engineering a Compiler Great for compiler back-ends and optimization.
- Crafting Interpreters Beginner-friendly and highly practical. Recommended even for compiler devs.
- LLVM's Kaleidoscope Tutorial An intro to building a language using LLVM.
- Compilers: Principles, Techniques, and Tools (The Dragon Book) Classic, parser-heavy, and theoretical.
Programming Language Design
- Types and Programming Languages
- Advanced Topics in Types and Programming Languages
- Practical Foundations for Programming Languages
Covers Both Compiler & PL Design
- Essentials of Programming Languages Elegant presentation of both interpretation and semantics.
Optimization Techniques
- What Has My Compiler Done for Me Lately? (YouTube)
- Optimizations in C++ Compilers: A Practical Journey
Computer Architecture
- Essentials of Computer Architecture (PDF) Useful context for low-level compiler work.
List compiled by members of the TCCPP and #include Discord communities.