Показать сообщение отдельно
  #82 (permalink)  
Старый 18.04.2009, 16:52
...
Отправить личное сообщение для Zeroglif Посмотреть профиль Найти все сообщения от Zeroglif
 
Регистрация: 09.03.2008
Сообщений: 216

Сообщение от kefi
Когда Программа может менять слоты [[Scope]]'a' Замыкания (основная проблема анализа Замыканий) ?
Не движемся вперёд никак. Scope (scope chain) - это принадлежность контекста исполнения, список объектов, где ищется идентификатор. [[Scope]] - это принадлежность функции, "закладка" на объекты, которые войдут в будущем (при исполнении) в состав Scope контекста исполнения данной функции.

[[Scope]] статичное свойство, появляется при создании функции и далее уже не меняется в отличие от Scope, меняющейся при каждом вызове. То, что вы называете слотами [[Scope]] - это объекты, ни программа, ни программист не меняют эти "слоты", они лексически "заморожены" специально. Вызывая 100 раз функцию из любого места, вы носите с собой одно и то же значение [[Scope]], добавляя в момент вызова новый VO, что в итоге и формирует scope chain...
Ответить с цитированием