Home » Articles/Editorial

Complier Vs Interpreter | Difference between Compiler and Interpreter

By: IncludeHelp, on 06 AUG 2016

Compiler and Interpreter Differences

Both are the Computer Programming Language Translators, still they have differences; here we will learn what are the compilers and interpreters and what are the differences between them.

Compilers and Interpreters are the system softwares (programming language translators) which are used to convert program that are written in high level programming language into machine level code.


A compiler is a programming language translator which converts High Level Language program to its equivalent Intermediate Code. Compiler read complete program once and compiles complete code.


An Interpreter is a programming language translator which converts High Level Language program to its equivalent Machine Code. Interpreter reads program line by line or we can say statement by statement and if statement is error free, it converts into machine code.


Compiler Interpreter
Compiler generates an Intermediate Code. Interpreter generates Machine Code.
Compiler reads entire program for compilation. Interpreter reads single statement at a time for interpretation.
Compiler displays all errors and warning at time and without fixing all errors program cannot be executed. Since Interpreter reads single statement so an interpreter display one error at a time and you have to fix the error to interpret next statement.
Compiler needs more memory because of object (an intermediate code) generation, every time when program is being compiled an intermediate code (object code) will be generated. In comparison to Complier, an Interpreter needs less memory to interpret the program as interpreter does not generate any intermediate code, it direct generates machine code.
The programming languages which use Compilers – C, C++, (.Net also has compilers for different languages and generates MSIL code, MSIL code further converts into Machine Code using JIT Compiler). The programming languages which use Interpreters – Ruby, Python

Other types of Programming Translators (Compilers, Interpreters)

Source To Source Compiler
Special type of programming translators that converts a high level language program to another high level language program known as source to source compiler.

The programming language translator that convert an Intermediate Code or Machine Code into a high level language program known as Decompiler.

Programming Language Translator that converts Assembly program to its equivalent Machine Code known as Assembler.

Programming Language Translator that converts Machine Code into its equivalent Assembly Code known as Disassembler.

Some of the popular Compilers: For C, C++ programming: gcc, g++, Borland TurboC

Some of the popular Interpreters: Python, Basic, Java

Related Articles



Comments and Discussions



Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© some rights reserved.