- separate parsing from execution - rearrange code for organizational clarity - provide execution errors and parse-time errors - implement .or for repeated TBR=rsc OCL=27650 CL=27650