The only reason why I've written this post because I've seen many people get confused with compiler languages and interpreter languages. Hope this helps for basic understanding.
Compiler:
- Entire program(all lines) is scanned first and then gets translated into machine-code.
- Debugging of programs is quite slow in compilers.
- Gives error messages regarding all errors present in the program all at a time.
- Takes less time for program execution.
Interpreter:
- The program is translated line by line.
- Debugging is very fast in case of interpreters.
- Gives error messages regarding to the first error that come across and stops translating remaining lines.
- Takes more time for program execution.