This book covers the following topics related to Compiler Design: Lexical Analysis, Syntax Analysis, Interpretation, Type Checking, Intermediate-Code Generation, Machine-Code Generation, Register Allocation, Function calls, Analysis and optimisation, Memory management and Bootstrapping a compiler.