Algorithms, languages, automata, and compilers a practical approach - Mozgovoy, Maxim (Jones and Bartlett Pub., 2010)