Читал книгу про программирование (SICP)
В главе где объясняется работа с окружениями не могу уложить в голове эту тему. Картинка в какой-то момент рассыпается. Начал разбираться что не так с текстом и почему у меня пропадает понимание.
По тексту идут такие объекты внимания и утверждения о них:
… В нашей новой модели вычислений такие места будут находиться в структурах, которые мы называем окружениями (environments).
… Окружение представляет собой последовательность кадров (frames). Каждый кадр есть (возможно, пустая) таблица связываний (bindings)…
… в каждом кадре имеется указатель на объемлющее окружение (enclosing environment), кроме тех случаев, когда в рамках текущего обсуждения окружение считается глобальным (global) …
Далее идет диаграмма и пояснение.
… На рисунке 3.1 изображена простая структура окружений, которая состоит из трех кадров, помеченных числами I, II и III. На этой диаграмме A, B, C и D — указатели на окружения. C и D указывают на одно и то же окружение.
и вот то самое место, где заявлены “A, B, C и D — указатели на окружения” - тип “указатель”
А далее по тексту:
… В окружении D переменная x имеет значение 3. …
… В окружении B значение переменной x также равно 3. …
указатели превращаются в имя окружения (!!).
Сначала подумал что дело в не корректном переводе оригинала. Полез в оригинал посмотреть, как там написано.
… In the diagram, A, B, C, and Darepointers to environments. C and D point to the same environment. …
… The evalue of x in environment D is 3. The value of x with respect to environment B is also 3. …
По сути то же самое. Тип в какой-то момент меняется. Дело было не в переводе.
В этой истории поймал себя на том, что отловил чувство дребезга во время чтения текста.