Зачем интерпретация программы?
Если есть второй метод трансляции, это компиляция.
Компилированый код быстрее исполнится, чем интерпретированный.
И к тому же, интерпретатор занимает место в оперативной памяти.
Компиляция происходит для определённой ОС. Интерпретированный код будет запускаться через интерпритатор на разных ОС. Java интерпретирует код под определённую ОС и "написанно однажды работает везде".
Интерпретируемый код прозрачен и легко исправляется "на лету". Можно по-быстрому сляпать интерпретируемую программу, и в случае частых поправок кода (каких-то переменных) просто открыть текстовым редактором и изменить, не ища компилятор. Также интерпретируемый код часто менее зависим от фреймворков, и отсюда более легко переносим.
Также перед запуском программы в интерпретируемом виде можно посмотреть, что она будет делать - программа и есть исходник. В случае транслируемого приложения - надо либо искать исходник где-то еще, либо разбирать программу, либо доверять на свой страх и риск перед запуском.
Интерпретируемую программу легче проверить, с точки зрения, вредоносности кода. Поэтому интерпретаторы применяются, в основном, для интернет-программирования: языки HTML, PHP, Perl, Java (в определенной степени) и т. п.
1. Интерпретатор дает возможность управлять исполнением кода, так как имена функций, объектов и т. д. хранятся в памяти, а не только их адреса.
Возможно создать функцию типа eval().
Возможно (во всяком случае, проще) реализовать сборку мусора, которая сможет предотвращать утечки памяти при ошибках.
2. Интерпретатор намного проще создать, чем компилятор.
3. Если на данном ЯП планируется писать в основном "одноразовые" скрипты типа батников или VBA, то компиляция + исполнение каждый раз будет занимать больше времени, чем только интерпретация.
4. Интерпретация может предусматривать использование своего формата исполнимого файла, котор. может быть платформонезависимым, в отличие от стандартного формата типа ехе, который скажем на линуксе просто не запустится, и даже при использовании только кроссплатформенных средств, придется скомпилировать несколько версий программы для разных ОС.
Значит надо.