The ones who are crazy enough to think they can change the world are the ones who do.- Steve Jobs
Interpreter is also a language translator that translates a source code(.c) into a machine code(.obj). But it converts only one source code instruction to a machine code instruction at a time. Therefore a compiler processes the entire program in one go while interpreter processes one instruction at a time.
The interpreter checks for errors in each source code instruction and indicates it to the programmer instantly. Thus clearing errors for a programmer is not that much headache. As interpreter execute the instruction, only after the error in a instruction is corrected. This process continues until the last line of a program is reached.
Interpreter replaces a single statements to a single machine language instruction at a time. A single statement is a line terminated by semicolon. The following diagram clearly demonstrate how interpreter translate source code to a machine code.
|Scans entire program before translating it into object code(machine readable).||Translates one instruction at a time.|
|Slow in debugging.||Fast in Debugging.|
|Execution time is less.||Execution time is more.|
|C, C++ are the best examples which uses compiler.||Python, Ruby, Matlab and Perl are the best examples which uses interpreter.|
We may make mistakes(spelling, program bug, typing mistake and etc.), So we have this container to collect mistakes. We highly respect your findings.