A Compiler is a computer program that translates code written in a high level language to a lower level language, object/machine code. The most common reason for translating sourcecode is to create an executable program(converting from a high level language into machine language).