The correct answer is: D. a program which translates source program into object program.
A compiler is a program that translates a high-level programming language into a low-level programming language. The high-level language is easier for humans to read and write, while the low-level language is easier for computers to understand. The compiler takes the source code written in the high-level language and converts it into object code, which is a series of instructions that the computer can understand and execute.
The other options are incorrect because:
- A person who computes source programs is called a programmer.
- A programmer is not the same thing as a key punch operator. A key punch operator is a person who enters data into a computer using a keypunch machine.
- A compiler is not a key punch operator.
- None of the above is a correct definition of a compiler.