Programming languages are the primary tools for all computer programmers.Compiler is used to translate computer code from a programming language to machine code to an executable program.
Compilers are complex software systems. The software architecture of a compiler is quite general. A large variety of applications can be modelled after a compiler. After the course you should have an understanding,based on knowledge of the underlying machine architecture, the limitations and efficiency of various design techniques of compiler implementation.