junction used outside of context [Будет ли ошибка исправлена в ближайшее время?
Александр Петросян (PAF) 31.07.2002 11:59
http://parser.ru/forum/?id=42611.
вовсе не "просто".
такая конструкция порождает косвенную связь куска кода с внешним миром через переменные. всякие косвенные связи крайне трудно отлаживать и понимать, код необходимо бить на максимально независимые блоки, общающиеся через возможно более узкий интерфейс, так задача делится на части легче = часть эти могут выполнять отдельные люди, или один человек, но не держа всё одновременно в голове.
2.
конструкция
@method[param][local]
$var{parser code $param $local}
нужна, чтобы связать код с локальными переменными, и чтобы потом можно было условно вызывать.
и, конечно, взялась не из воздуха, а является прямым продолжением конструкции
@method[param][local]
^if(условие){parser code $param $local}
или, если так непонятно, конструкции:
@method[param][local]
^call{parser code $param $local}
ведь всем понятно, что код, переданный в метод, должен выполняться в контексте вызова, в контексте тех локальных переменных и текущего объекта, в котором написан, а не в котором к нему происходит обращение ВНУТРИ call [ведь там могут быть совсем другие переменные с теми же именами, а нужных может не быть].
а теперь подумаем, куда деваются локальные переменные, когда мы выходим из метода? правильно, их состояние неопределено.
[сейчас памяти освобождается совсем немного, но со временем…]
а теперь подумаем, как можно пользоваться переменными, которые недоступны? правильно: никак.
[отдыхал я немного]
- junction used outside of context [Будет ли ошибка исправлена в ближайшее время?, Александр Петросян (PAF) [M] 31.07.2002 11:59