A Algebraic Approach to Compiler Design by A. Sampaio