Compiler construction - Kenneth, Louden (London Cengage, 2011)