0-ZEvS-0>>>> Когда мы запускаем скомпилированную программу, то в ней запускается интерпретатор, который начинает на лету исполнять программу ЯВУ. SEA> Ты прав, это все еще компиляция, правда, в "P-code". Или байт-код. Про P-code не знал, вернее не знал, что он так называется. Но знал, что хранить программу в виде текста бессмысленно, например, если операторов меньше 256, то вместо "PRINT" - 5 байт и пробел, можно указать 1 байт, номер оператора.
В общем - да, программу надо держать не в виде текста, а в некотором упакованном виде, кроме того - это ускоряет работу интерпретатора, упрощается парсинг.
SEA> И это не машинный код. Да, это некий универсальный код, который может исполняться на любом железе, но на котором должен быть свой интерпретатор в своих машкодах. Ну, то есть кроссплатформенный байт-код.
SEA> Но в основном скрипты делают парсинг текста и исполняют на лету, без пи-кода. Когда с среде разработки, совместно с редактором, то наверное, так проще. Ну и отлаживать текст проще.
SEA> Это то, что подразумевают твои оппоненты. И они тоже правы. Я понимаю, но мне не удается вызвать у оппонентов желание взглянуть шире. В конце-то концов, для чего этот спор непонятный, не по теме, и не по желанию?
Началось все с зависания EC ЭВМ...
SEA> И они говорят о компиляции, но чисто в машинный (бинарный) код. SEA> Потому что большинство компиляторов именно производят машинный код. Которому интерпретатор не нужен. Да, понимаю.
SEA> Посмотри на микроше в С вывод. SEA> К примеру, какой нибудь return даст C9. Это и есть машинный код, не байт-код На самом деле, помимо C9 Еще много чего добавится. Там в стеке все регистры "пропопятся". Ну и еще какой-нибудь "пендинг" произойдет.
SEA> И всем: в общем, все правы. Но здесь не место обсуждать это. А то еще и линкеры всплывут, объектные файлы и пр. Да, уже всплыли. Но, просто так бросить это обсуждение я не хочу - ибо неправильно. Надо подытожить.
SEA> P.S. прочитал ниже, ты все верно подытожил. Оба случая - комптляция, просто в разный результат.