Compiler
|
Interpreter
|
A compiler is a program that reads a program in one language (source language) and translate it into an equivalent program in another language ( target language)
|
An interpreter is a program that reads a program and directly executes each statement of it
|
Compiler takes Entire program as input
|
Interpreter takes Single instruction as input.
|
More memory is needed
|
Less memory is needed
|
Compilation may be slower. But once compiled, target code can run faster
|
Slower because interpreter must analyze each statement every time it is executed
|
Errors are displayed after entire program is checked
|
Errors are displayed for every instruction interpreted (if any) .Better error diagnostic
|
Intermediate Object Code is Generated
|
Mostly no Intermediate Object Code is Generated
|
Machine code is generated
|
No machine code is generated
|
Example : C Compiler
|
Example : BASIC
|