The correct answer is D. A compiler is a program that translates source code written in a high-level programming language into a low-level programming language (object code) or machine code.

A. A person who compiles source programs is called a compiler writer. B. A programmer is a person who writes computer programs. C. A keypunch operator is a person who operates a keypunch machine, which is a device that punches holes in paper cards to represent data. E. None of the above is a correct definition of a compiler.