if working in ast and type check, codegen still to do