[Moscow.pm] Вакансия: AnyEvent in Mail.ru
Mons Anderson
mons на cpan.org
Пн Июл 29 03:31:33 PDT 2013
2013/7/26 ksvs <ksvs1996 на ymail.com>:
> Смысл в том, чтобы добавить прослойку ограничивающую взор вложенных
> замыканий.
>
> call sub {
> my ($a, $b) = ...;
> my $i = ...;
> call sub {
> # Видит все $a и $b и остальное.
> my $i = ...
> # Забыл поставить my перед $i и получил ошибку.
> call ...
> }
> }
>
> Заменяем на
>
> sub foo {
> my ($b) = @_;
> # Видит только $b, - только то, что нужно.
> call ...
>
> }
>
> call sub {
> my ($a, $b);
> call sub { foo($b) }
> }
>
> Так проще получается и меньше ошибок.
>
1. Фактически удваивается кол-во вызовов.
1.1 Если так забить на производительность, то лучше юзать Coro
2. Если переменная не упоминается в скопе, она не замыкается.
> P.S.
>
> mod_perl?
>
Всяко бывает ;)
--
Best wishes,
Vladimir V. Perepelitsa aka Mons Anderson
<inthrax на gmail.com>, <mons на cpan.org>
http://github.com/Mons
Подробная информация о списке рассылки Moscow-pm