final project for compiler design class