Author(s): Naeem Akhtar, Rahul, Naveen Malik, Pankaj Sharma, Hardeep Rohilla

CodeGeneration is the process of transforming code from one representation to another..CodeOptimization is the field where most compiler research is done today. The tasks of the front-end (scanning, parsing, semantic analysis) are well understood and unoptimizedcode generation is relatively straightforward. Optimization, on the other hand, still retains a sizable measure of mysticism. High-quality optimization is more of an art than a science. Compilers for mature languages aren’t judged by how well they parse or analyze the code—you just expect it to do it right with a minimum of hassle—but instead by the quality of the object code they produce.