Let's Build a Compiler
by Jack Crenshaw
Number of pages: 277
This fifteen-part series, written from 1988 to 1995, is a tutorial on the theory and practice of developing language parsers and compilers from scratch. Before you are finished, you will have covered every aspect of compiler construction, designed a new programming language, and built a working compiler. At the end of this series you will by no means be a computer scientist, nor will you know all the esoterics of compiler theory. The author intended to completely ignore the more theoretical aspects of the subject. What you will know is all the practical aspects that one needs to know to build a working system.
Download or read it online for free here:
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 Robert Nystrom - craftinginterpreters.com
This book contains everything you need to implement a full-featured, efficient scripting language. You'll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection.
The goal of this book is to have a community documentation providing extensive and up-to-date instructional information about how to use the open-source ROSE compiler framework, developed at Lawrence Livermore National Laboratory.