lab4 compilers