Александр Ильин писал(а):
(+1e37) - Это очередной вариант "leet"?
Нет, просто вижу, как все пишут +1 или даже +5 - вроде как присоединяются к высказанному мнению, отдают свои голоса (бонусы, "ку") за процитированное высказывание, ну и т.п... Так как для real*4 +1e37 (копейки округляем) - максимально возможное значение, то хотел сказать, что согласен в самой что ни на есть превосходной степени
AVC писал(а):
Могу предположить, что это связано с введением процедурных переменных.
Допустим, мы передали вложенную процедуру как параметр, а там её сохранили в глобальной процедурной переменной (вместе с BP или без него - одинаково плохо). А потом, значительно позднее, использовали процедурную переменную в самый неподходящий момент, когда процедура, в которую была вложена переданная в качестве параметра, уже завершила свою работу.
Это было исключено при штатном применении... Хотя, конечно, против лома нет приёма... Разумеется, адрес процедуры передавался параметром... и выглядело это примерно так:
Код:
procedure GlobalProcWithContext;
var x,y,z... //контекст
procedure MyProc(p:pItem);
begin
... //работаем с p в контексте x,y,z
end;
begin
...
SomeCollectionOrList.ForEach(@MyProc);
...
end;
Формат (тип, список параметров) процедурного параметра определялся отдельно, в стандартных объектах такой механизм использовался для итераторов (для коллекций и проч.) и в параметрах передаваемой процедуры был указатель на текущий элемент списка, коллекции... Вот уж не думал, что такой, в общем-то, удобный, механизм, будет дискутироваться тут на абстрактно-теоретическом уровне
Info21 писал(а):
Речь же не о том, можно ли записать с локальной процедурой, а действительно ли это необходимо
Вот именно, рассматриваете Вы какие-то элементарные учебные примеры и делаете на их основе обобщающие выводы... А ведь контекст может быть огромным и включать, например, кучу временных вспомогательных массивов для какой-нибудь многокритериальной оптимизации над локальными же данными вызывающей процедуры... И сложный алгоритм обработки всего этого может быть на много-много страниц. и действий там повторяться - вагон, и чтобы не вынести их в процедуру - это надо быть даже не мазохистом, а я не знаю как и сказать