The assignments will generally be small, with the intent of gaining some experience with each kind of system. Papers to be read will be assigned corresponding to lecture topics. Guest lecturers who are active researchers in the area will present lectures on their research. Automatic Programming seeks to make programming much easier, faster, cheaper, and more reliable.
Most approaches seek to make programming higher-level than ordinary programming.
Several formidable problems stand in the way of achieving these goals. A high-level specification language may work only for a narrow class of problems. Each of the technical topics to be covered in lecture and its relevance to automatic programming is briefly discussed below. Compiler courses such as CS 375 usually are not able to devote much time to optimization. Compiler optimization is important for several reasons.