References:
“Introduction to the Theory of Computation”, Michael Sipser, Third Edition, Cengage Learning
“An Introduction to Formal Languages and Automata”, Peter Linz, Jones and Bartlett Publishers
“Engineering a Compiler”, Keith Cooper and Linda Torczon, Second Edition, Morgan Kaufmann Publishers