compiler - doesn't need to print ast