Если не секрет, зачем?) Подумалось про твигги, если он, то можно сделать как то так:

use common::sense;

sub init {
    say 42;
}

sub app {
    init();
    eval q|
        sub app {
            say "[500, [], [$_[0]]]";
        }
    |;
    die $@ if $@;

    &app;
};

app($_) for (1..3);



7 февраля 2014 г., 20:19 пользователь Харпалёв Иван <[email protected] <mailto:[email protected]>> написал:

    Доброго времени суток, могучий MoscowPM;

    Скажите, есть ли какие-то решения, чтобы кусок кода выполнялся
    ровно один раз? ( за время жизни программы)

    например

    for (...) {
           do_once { code to be executed only once };
           ....
    }
    do_once  { some_more() };

    Или как такое посоветуете делать?
    Чтобы по caller определялось, место вызова и куда-то запоминалось
    или ещё как-то?

    С уважением


    --
    Moscow.pm mailing list
    [email protected] <mailto:[email protected]> | http://moscow.pm.org





-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить