ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
From: Alexey Morozov <morozov@novosoft.ru>
To: sisyphus@altlinux.ru
Subject: Re: [sisyphus] Re: [sisyphus]  Давайте спорить. О  Perl?
Date: Wed, 23 May 2001 08:44:19 +0700
Message-ID: <3B0B15F3.3060400@novosoft.ru> (raw)
In-Reply-To: <20010523030914.F1915@localhost.localdomain>

Mikhail Zabaluev wrote:

>А что, и расскажу. Когда мы с Дмитрием обсуждали авто-зависимости для
>Perl, никаких общепринятых схем, кроме perl-Some-Module в имени
>пакета, на горизонте не было. Выбранная схема позволяет включать в
>
Гхм. Насколько я понимаю ситуацию, уже в 98 году у меня были модули, 
собранные именно через perl(Test::Module) :-)

>зависимости не только .pm-модули, но и .pl, .ph и -- теоретически --
>любые другие. Почитайте внимательно TFM: оператор require допускает
>явную файловую форму, а также разделитель "'" вместо "::". Вы уже
>
Я это знаю. Я профессиональный писатель на perl (ну, нет, разумеется, не 
только :-)) Я даже знаю, что require можно заменить на do + 
манипулирование %INC :-). А в некоторых, совсем клинических местах 
(например, у меня) встречается

$module = get_app_name($somedata);
eval "require $app"; # Вот именно так, в строчном контексте, чтобы не 
колбасить руками преобразование Test::Module -> Test/Module.pm :-)

Я это все знаю. Более того, пользуюсь. И поэтому не могу сказать: "а, вы 
все дураки, один я Д'Артаньян". Но думать надо. Вы не задумывались над 
тем, что бы пытаться грузить модуль, а потом анализировать изменения в 
%INC? По-видимому, это даст нам _минимальный_ набор требуемых модулей, 
хотя, конечно, если модули цепляются через require, там придется еще 
подумать, а удается ли их зацепить таким вот образом. Короче, надо думать...

>ненавидите Perl так, как ненавижу его я? :)
>
"Это наша родина, сынок" :-)

> Во всем этом разнобое самыми надежными выглядят имена файлов.
>
Собственно, большой разницы, что цеплять perl(Test/Module.pm) или 
perl(Test::Module) я не вижу (разве что, второе более наглядно и, 
наверное, более портабельно между системами :-)). Но вот как эти 
Test::Module выбирать - это вопрос...

>>Нет, я еще раз повторю, я не знаю, как правильно. Возможно, совсем 
>>правильно, но ломово - руками.
>>
>Истинно так. AutoReq и AutoProv - подпорки, которые не должны
>полностью заменять высшую нервную деятельность. Они должны работать
>
Глядя на размер CPAN начинаешь тосковать по более полезному применению 
"высшей нервной" :-)

>там, где эта деятельность не требуется. В тех же пакетах, где
>встречаются такие require "из-за угла", AutoReq: perl (на финальной
>стадии работы над пакетом) не используется.
>
>В текущей версии скриптов perl.{req,prov} анализируются наиболее
>распространенные формы операторов включения, да еще делается eval в
>"сейфе" как попытка определения номера версии. Есть ухищрения, которые
>можно применить -- например, в Perl 5.6.x можно прогнать байт-код
>через декомпилятор, и если тот не загнется, получить идеально
>выровненный текст, где уровень отступа означает вложенность. Но пока
>
Гхм... Что-то в этом есть...

>не видно практической нужды увеличивать точность работы за счет
>понижения производительности. Идеи, разумеется, приветствуются.
>Особенно - в виде кода, патчей и т.п.
>
Угу.






  reply	other threads:[~2001-05-23  1:44 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-05-18 12:31 [sisyphus] Давайте ругаться Alexey Morozov
2001-05-22  9:40 ` [sisyphus] Re: [sisyphus] Давайте спорить Dmitry V. Levin
2001-05-22 13:17   ` Alexey Morozov
2001-05-22 17:50     ` Aleksey Novodvorsky
2001-05-22 17:58       ` Aleksey Novodvorsky
2001-05-23  2:06       ` Alexey Morozov
2001-05-23 11:11         ` [sisyphus] " S. Budnevitch
2001-05-23 13:01           ` Alexey Morozov
2001-05-22 18:19     ` Dmitry V. Levin
2001-05-23  1:27       ` Alexey Morozov
2001-05-23  9:11         ` Mikhail Zabaluev
2001-05-23 10:39           ` Alexey Morozov
2001-05-23 11:01         ` Aleksey Novodvorsky
2001-05-22 23:09     ` [sisyphus] Re: [sisyphus] Давайте спорить. О Perl? Mikhail Zabaluev
2001-05-23  1:44       ` Alexey Morozov [this message]
2001-05-23  8:58         ` Mikhail Zabaluev
2001-05-23 11:02           ` Alexey Morozov
2001-05-23 21:33             ` Mikhail Zabaluev
2001-05-24  4:05               ` [sisyphus] первый login Sergey S. Skulachenko
2001-05-22 11:45 ` [sisyphus] Давайте ругаться Aleksey Novodvorsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3B0B15F3.3060400@novosoft.ru \
    --to=morozov@novosoft.ru \
    --cc=sisyphus@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git