Re: Снова подключение модулей во время вып о лнения

From
Artem Chuprina (2:5020/400)
To
Dmitriy Zverev
Date
2005-08-17T11:22:06Z
Area
RU.PERL
From: Artem Chuprina <ran+news@ran.pp.ru>

Dmitriy Zverev -> Artem Chuprina  @ Mon, 15 Aug 2005 17:45:10 +0400:

 FL>> >>>> А ты попробуй явно позвать функцию Module::Name::import()
 FL>> >>>> Или неявно через eval "use $package_name";
 FL>> >>>> По крайней мере логично было бы специфичную для модуля
 FL>> >>>> инициализацию вынести в sub import {}
 FL>> >>> Да модуль грузится через require без лишних телодвижений. Проблема 
 FL>> >>> в том, что созданные объекты и переменные видны только в пределах
 FL>> >>> подгружаемого файла.
 FL>> >> Так их экспортировать пробовал? При помощи Exporter?

 AP>>> Нет. Но с другой стороны, внутри подгружаемого файла не видны
 AP>>> переменные из основной программы.

 AC>> И это тоже правильно.  Нужно - передай как параметр функции.  Нет,
 AC>> есть, конечно, синтаксис main::, но прежде чем так сделать, надо
 AC>> трижды подумать, почему так делать не надо...

 DZ> А почему так делать не надо?

Потому что предположения библиотеки о том, для чего используется та или
иная переменная в основной программе - источник таких ошибок, что даже
подумать страшно...  И всего-то надо - передать параметр...

-- 
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru

Красивая женщина - это пир для глаз
во время чумы для ушей.
	Кнышев.
--- ifmail v.2.15dev5.3
 * Origin: Leninsky 45 home network (2:5020/400)
SEEN-BY: 50/203 520 400/462 814 450/159 186 451/30 461/43 132 640 469/999
SEEN-BY: 4616/3 4625/8 4627/10 4635/4 4641/444 5000/76 5000 5001/5001 5006/1
SEEN-BY: 5007/1 5010/53 70 5012/8 46 5015/10 5020/118 154 175 194 400 545 549
SEEN-BY: 5020/715 758 830 982 1057 1523 1604 1665 1922 2013 2020 2142 2238
SEEN-BY: 5020/2590 4441 5021/3 29 5022/128 5025/3 750 5026/14 49 5027/16
SEEN-BY: 5030/49 115 436 556 966 1063 1339 1900 5031/47 70 5033/21 5035/3
SEEN-BY: 5036/1 5040/47 5042/13 5045/7 5049/1 5051/15 5053/16 5054/1 8 9 35 36
SEEN-BY: 5054/37 45 66 67 81 85 5057/1 5059/9 5060/3 88 5061/15 120 5062/1 10
SEEN-BY: 5064/39 5066/18 5069/7 5070/1222 5075/5 5077/70 80 5080/80 1003
SEEN-BY: 5081/2 5082/6 5083/21 5085/13 5090/108 113 5095/20 5096/18 6000/12
SEEN-BY: 6001/3
PATH: 5020/400 4441 545 5054/1 37