The systematic development of EFFicient programs from high-level specifications by meaning-preserving program manipulations. Also known as optimisation. See fusion, loop combination, peephole optimisation, {register allocation}, {tupling}, {unfold/fold}.