A compiler the takes a program written in the source code and generates an equivalent code in the target code.