Classical programming languages mostly operate in one of two different ways: compiling your code and then running it, or interpreting runtime code while the program is running. What's the difference between them, and why do you want to use one over another? For a thorough read on this topic, check out this blog post and find out!
What is a compiler?
A compiler is a program that takes source code written in a programming language and turns it into machine language used by machines. The compiler first parses the source code and then builds the output code. Alternatively, the bytecode can be compiled.
They can also be used for converting program files for distribution by the manufacturer of a computer system, or for converting executable instructions from one computer-dependent architecture to another (for example, from IBM PC's architecture to Intel x86).
What is an Interpreter?
An interpreter is a program or system which directly executes a computer language (script) without compiling it.
An interpreter parses source code and interprets it without compiling the code. These interpreters are usually written in high-level programming languages like Python, Perl, etc.
This allows you to run programs without actually compiling the code. If a program is not compiled in your computer's native processor it is most likely an interpreter.
Programming Langauge that compiles code
- Java
- C
- CPP
- C#
Programming Languages that interprets code
- PHP
- Perl
- Python
- JavaScript