cache parse result
modify Environment, IO object