Introduction to compiling techniques a first course using ANSI C, LEX, and YACC - Bennett, J. P. (McGraw-Hill, 1996)