Use only…
Столько лет программирую на Perl и всё время узнаю что-то новое. Главным образом потому, что недосуг внимательно прочитать полную документацию. Сегодня с удивлением узнал о существовании конструкции «use only» [ <<> ]
Это сайт — моя персональная записная книжка. Интересна мне, по большей части, история, своя жизнь и немного программирование.
<blockquote>
недосуг внимательно прочитать полную документацию
</blockquote>
… на все модули на CPAN’е, да? :-)
Давно ли эта конструкция появилась (если до Perl 5.6.1 она не работает)?
Комментарий для Baka:
какие такие все модули? это <b>конструкция</b>. А если ещё и сходить по ссылке, то можно, думаю, без труда узнать где работает эта конструкция.
Возможно, я неясно выражаюсь или плохо понимаю. :-)
Конструкция
use only MyModule => 0.30;
— это вызов модуля only.pm с параметрами MyModule и 0.30 .
Про то, что эта конструкция не работает до Perl 5.6.1, я узнал именно сходив по ссылке.
Ещё раз убедился в этом, когда установил его:
ppm
install only
quit
perldoc only
…
BUGS AND CAVEATS
<ul><ul><li>This module only works with Perl 5.6.1 and higher. That’s because
earlier versions of Perl don’t support putting objects in @INC.
</ul></ul>
«only.pm» — это модуль. Так же, как «strict.pm», «integer.pm» и другие.
Я знаю, что модули без больших букв в названии принято называть прагмами,
но от этого они не перестают быть модулями.
Возможно, в будущем only будет входить в стандартную поставку Perl’а.
И это будет хорошо, потому что модуль полезный.
Комментарий для Baka:
Я-то думал «only» это именно конструкция. Хм… Был не прав. Что до будущего, уже давно сушествует Perl 5.8 :)