Size: a a a

2020 November 19

SZ

Sergey Zhmylove in use Perl or die;
Алексей Клименко
Так в список того, чего не может перл (ой, простите, «того чего *без костылей* не может перл») мне добавлять и «сохранить возвращаемое значение функции, чтобы потом вернуть его самому»?
Нет, он может без костылей
источник

IB

Ivan Bessarabov in use Perl or die;
делай при входе в сабу к ней плюс, а перед return минус
источник

SZ

Sergey Zhmylove in use Perl or die;
Ivan Bessarabov
а зачем тебе local?
Он просто не понимает, что такое локал :)
источник

VT

Vasily Terkin in use Perl or die;
и да, local тебе не поможет
источник

SZ

Sergey Zhmylove in use Perl or die;
Ivan Bessarabov
делай при входе в сабу к ней плюс, а перед return минус
Я так понимаю, он не может менять функцию
источник

АК

Алексей Клименко... in use Perl or die;
Ivan Bessarabov
делай при входе в сабу к ней плюс, а перед return минус
У меня не при каждом входе плюс, и не при каждом выходе минус.

скорее, там
f_body (рекурсивная, но в том числе if(…){return f_layer()})
и
f_layer, которая должна deep++, return f_body() и deep--
источник

АК

Алексей Клименко... in use Perl or die;
@Alyssamaya report.
источник

SZ

Sergey Zhmylove in use Perl or die;
Алексей Клименко
У меня не при каждом входе плюс, и не при каждом выходе минус.

скорее, там
f_body (рекурсивная, но в том числе if(…){return f_layer()})
и
f_layer, которая должна deep++, return f_body() и deep--
Это зачем, если на входе в body будет ++ ?
источник

АК

Алексей Клименко... in use Perl or die;
Да не при каждом входе нужно, потому что.
источник

SZ

Sergey Zhmylove in use Perl or die;
Алексей Клименко
Да не при каждом входе нужно, потому что.
Почему?
источник

SZ

Sergey Zhmylove in use Perl or die;
Ты сам только что сказал
источник

АК

Алексей Клименко... in use Perl or die;
Это счётчик _другой_ рекурсии, не собственных вызовов именно этой функции.
источник

SZ

Sergey Zhmylove in use Perl or die;
Что либо: а) явно боди вызывается -- тут нужно; б) боди вызывается через филд -- тут якобы не нужно, но ты всё равно делаешь в филд
источник

SZ

Sergey Zhmylove in use Perl or die;
Алексей Клименко
Это счётчик _другой_ рекурсии, не собственных вызовов именно этой функции.
Wtf, т.е. у тебя два счётчика рекурсии?
источник

SZ

Sergey Zhmylove in use Perl or die;
Может уже пора начать передавать deep внутрь? А то потом ведь третий появится
источник

АК

Алексей Клименко... in use Perl or die;
Sergey Zhmylove
Wtf, т.е. у тебя два счётчика рекурсии?
У функции есть две с половиной тыщи способов, как она должна отработать (в огромном хеше лежат имена sub-ов, ага), но эти способы в трёх группах (полтыщи, тыща и ещё тыща; планируется добавление новых).
Если в «текущем» списке она не может найти действие – она переключается на следующий список действий (каждое из которых может рекурсивно её вызвать), и работает в нём.
До тех пор, пока не кончатся списки. Но когда она отработала все свои рекурсивные вызовы в момент переключения списка – она должна восстановить предыдущий список.
источник

SZ

Sergey Zhmylove in use Perl or die;
Переслано от Sergey Zhmylove
Короче, братишка, тебе просто нужен системный архитектор в команду ;)
источник

АК

Алексей Клименко... in use Perl or die;
Sergey Zhmylove
Переслано от Sergey Zhmylove
Короче, братишка, тебе просто нужен системный архитектор в команду ;)
Это вы Дурову скажите!..
источник

SZ

Sergey Zhmylove in use Perl or die;
Алексей Клименко
У функции есть две с половиной тыщи способов, как она должна отработать (в огромном хеше лежат имена sub-ов, ага), но эти способы в трёх группах (полтыщи, тыща и ещё тыща; планируется добавление новых).
Если в «текущем» списке она не может найти действие – она переключается на следующий список действий (каждое из которых может рекурсивно её вызвать), и работает в нём.
До тех пор, пока не кончатся списки. Но когда она отработала все свои рекурсивные вызовы в момент переключения списка – она должна восстановить предыдущий список.
Берешь ссылку на функцию, достаешь cv, у него есть поле depth. Viola!
источник

АК

Алексей Клименко... in use Perl or die;
Sergey Zhmylove
Берешь ссылку на функцию, достаешь cv, у него есть поле depth. Viola!
Это, говорит, без костылей, ага.
источник