Foundations of computing compiler project