Владимир писал(а):
Я тут читаю DPANS94. И возник такой вопрос: чем отличается семантика выполнения от семантики интерпретации? Я так понимаю, что интерпретация, это обработка входного текстового потока, а выполнение - это работа VM уже по секции кода в словаре? Проясните, пжалста, этот момент Ибо мне кажется, что интерпретация в большей степени относится к компиляции, и в меньшей - к семантике выполнения. А в DPANS пишут, что при прочих равных семантика интерпретации и выполнения - это одно и то же Так и запутаться можно.
Следует различать текстовую интерпретацию от адресной интерпретации. При текстовой интерпретации есть фаза
поиска имени слова из входного потока в словарях, а затем начинается адресная интерпретация, которая и есть выполнение слова. Так адресная интерпретация слова это синоним выполнения этого слова. Взависимости от типа
шитого кода адресная интерпретация осуществляется по разному. Например в случае подпрограммного шитого кода адресный интерпретатор реализуется в структуре самого кода. В наборе слов форт-системы есть слова, которые при исполнении формируют код словарных статей. Эти слова могут приходить из входного потока и сначала обрабатываться текстовым интерпретатором, а могут быть в коде в словарях и сразу исполняться адресным интерпретатором. Короче когда говорят, что семантика выполнения и семантика интерпретации это одно и тоже, то имеют ввиду только адресную интерпретацию.