Основные различия между интерпретацией и компиляцией в трансляторах заключаются в том, как происходит перевод программы на машинный язык. 1
Компилятор читает всю программу целиком, делает её перевод и создаёт законченный вариант программы на машинном языке, который затем и выполняется. 1 Результат работы компилятора — бинарный исполняемый файл. 1 После того, как программа откомпилирована, ни исходный текст программы, ни компилятор более не нужны для исполнения программы. 1
Интерпретатор переводит и выполняет программу строка за строкой. 1 Программа, обрабатываемая интерпретатором, должна заново переводиться на машинный язык при каждом очередном запуске программы. 1
Скорость работы: скомпилированные программы работают быстрее, так как программный код в компиляторе уже переведён в машинный, и для его исполнения требуется намного меньше времени. 2 Интерпретируемые программы, в свою очередь, могут работать медленнее, так как их код не столь оптимизирован. 5
Каждый конкретный язык ориентирован либо на компиляцию, либо на интерпретацию — в зависимости от того, для каких целей он создавался. 1