compiler homework