GNU Compiler Collection (GCC) Internals
Publisher: Free Software Foundation 2008
This manual is mainly a reference manual rather than a tutorial. It discusses how to contribute to GCC, the characteristics of the machines supported by GCC as hosts and targets, how GCC relates to the ABIs on such systems, and the characteristics of the languages for which GCC front ends are written. It then describes the GCC source tree structure and build system, some of the interfaces to GCC front ends, and how support for a target system is implemented in GCC.
Home page url
Download or read it online for free here:
by Richard Bornat - Middlesex University
This book attempts to explain and demystify the principles of compiler writing so that you can go out and build a working compiler of your own. There is enough detail in this book for you to build a compiler for quite a complicated language.
by Dirk Vermeir - Vrije Universiteit Brussel
Contents: Introduction; Lexical analysis; Parsing; Checking static semantics; Intermediate code generation; Optimization of intermediate code; Code generation; Introduction to x86 Assembler Programming under Linux; Mc: the Micro-x86 Compiler; etc.
by Charles Donnelly, Richard Stallman - Free Software Foundation
Bison is a general-purpose parser generator that converts an annotated context-free grammar into an LALR(1) or GLR parser for that grammar. You need to be fluent in C or C++ programming in order to use Bison or to understand this manual.
by Stephen Diehl - StephenDiehl.com
We will build a small functional language called Fun, complete with a parser, type inference, datatypes, pattern matching, desugaring, typeclasses, higher-kinded types, monadic IO, arbitrary-rank polymorphism, records, Core language, etc.