Есть спецы по перл Perl?

Статус: Offline
Реєстрація: 30.05.2006
Повідом.: 8252
Есть спецы по перл Perl?

Нужна консультация по POD.
Нашел в сети Посилання видалено Но поскольку сам в перле почти никак, не знаю с какой стороны к нему подойти.
Суть в том, что есть нереальный код в 26000 строк, и надо с него нарисовать документацию. И этот OODoc вроде как-раз это и делает.
 
Та здается мну, щас с перлистами напряг, это пока ЦГАйки здравствовали, тогда еще народ как-то шевелился.
 
Собсно нихуя непонял из поста что именно нужно
 
народ а в Sharepoint кто-нить шарит..moSS 2007, пардон шо не совсем в тему, но реально нужен грамотный человек
 
Собсно нихуя непонял из поста что именно нужно

да нужно тупо разобраться с 26000 строками скрипта! Не, про "тупо" это фигурально. Я в перле - 0.5 (по шкале до 1.3 :D) и мне сказали, что нужна программа-документатор типа OODoc(см. пост.1) Вот она и есть, но реально тупит. Щас проблема - просто заставить этот OODoc просто работать. Это именно и нужно. Но он явно врёт.
 
Что-то явно заломил себе цену в 0.5/1.3 ;) Для понимания проблемы достаточно бегло просмотреть 5-6 страничек в Верблюде, у спеца заявленного уровня это должна быть настольная книга ;)
POD - это всего лишь встроенная документация. Т.е. это вставки в перловый код, которые перловым интерпретатором просто пропускаются, аналогично /* */ или // в Сях или тому же камменту # в Перле. Вставки блочные, начинаюся со знака = и директивы.
Но суть не в этом. Суть в том, что есть достаточно утилит, которые выковыривают POD-вставки и превращают их в отдельно стоящий более-менее связный хелп. В стандартной поставке перла идет серия утилит pod2html, pod2text и т.д. Угадай по этимологии названия, что каждая из них делает :)
Теперь главный вопрос - есть ли вообще в твоих 26000 строках эти вставки документации?
 
Что-то явно заломил себе цену в 0.5/1.3 ;) Для понимания проблемы достаточно бегло просмотреть 5-6 страничек в Верблюде, у спеца заявленного уровня это должна быть настольная книга ;)
POD - это всего лишь встроенная документация. Т.е. это вставки в перловый код, которые перловым интерпретатором просто пропускаются, аналогично /* */ или // в Сях или тому же камменту # в Перле. Вставки блочные, начинаюся со знака = и директивы.
Но суть не в этом. Суть в том, что есть достаточно утилит, которые выковыривают POD-вставки и превращают их в отдельно стоящий более-менее связный хелп. В стандартной поставке перла идет серия утилит pod2html, pod2text и т.д. Угадай по этимологии названия, что каждая из них делает :)
Теперь главный вопрос - есть ли вообще в твоих 26000 строках эти вставки документации?

ладно, на пару запятых ошибся, подумаешь... :)

проблема в том, что пока эти 26000 никто не видел :) Но было высочайше велено разобраться с одной из таких "утилит" впрок.
Так не будет ли любезен многоуважаемый джин объяснить, как конкретно работают эти pod2html, pod2text, т.е. есть файл file.pl и его надо отподить. Как я понял эти баты работают с уже готовым подом, а не ковыряют исходник.
Заранее благодарен.

Вот еще что-то похожее: Посилання видалено , но затруднения того же плана, не понятно как правильно его юзать.
 
Останнє редагування:
эмммм. доки на никому неизвестные 26000 строк?
нихуя нипанимаю...
 
ох пиздец какой то

тебе нужно научиться ебашить описания прог по 26000 строк но у тебя нету самой проги и ты незнаешь как ебашить ети самые описания, так?
 
ох пиздец какой то

тебе нужно научиться ебашить описания прог по 26000 строк но у тебя нету самой проги и ты незнаешь как ебашить ети самые описания, так?

шо попало.
Нет, не так, умник.
Мне надо просто заставить одну из этих программ Посилання видалено
Посилання видалено или др. правильно работать на примере любого другого перл-файла
 
проблема в том, что пока эти 26000 никто не видел :) Но было высочайше велено разобраться с одной из таких "утилит" впрок.
Так не будет ли любезен многоуважаемый джин объяснить, как конкретно работают эти pod2html, pod2text, т.е. есть файл file.pl и его надо отподить. Как я понял эти баты работают с уже готовым подом, а не ковыряют исходник.
Я четне понял.
Тебе надо в этот код вставить документацию? Тогда это тебе не утилиты нужны, а неибическое терпение и нездоровая страсть к авантюрам - документировать незнакомый код :) В данном случае тебе нужен еще обычный текстовой редактор.
А если тебе надо из документированного кода извлечь документацию в отторгаемом виде - то как раз с помощью этих утилит ты сможешь это сделать. Работают они просто - на вход принимают файлы с документированным кодом, на выходе выдают отторгаемую документацию в соответствующем для утилиты формате. Понимать там ничего особо и не надо.

Или есть еще третий вариант того, что же тебе в конечном итоге надо?
 
Я четне понял.
Тебе надо в этот код вставить документацию? Тогда это тебе не утилиты нужны, а неибическое терпение и нездоровая страсть к авантюрам - документировать незнакомый код :) В данном случае тебе нужен еще обычный текстовой редактор.
А если тебе надо из документированного кода извлечь документацию в отторгаемом виде - то как раз с помощью этих утилит ты сможешь это сделать. Работают они просто - на вход принимают файлы с документированным кодом, на выходе выдают отторгаемую документацию в соответствующем для утилиты формате. Понимать там ничего особо и не надо.

Или есть еще третий вариант того, что же тебе в конечном итоге надо?

Версия №2. Мне из файла надо сделать документацию. Причем если комментов нету, то должна быть подробная выпечатка всех субов как можно подробнее.
Ну нихуя у меня с синтаксисом не выходить. Если знаешь, то подскажи как это прописать.
Т.е. еще раз: есть файл "file.pl", и из него надо сделать документацию, например html.
Если знаешь OODoc, Docperl, те что в линках, то тоже самое. Просто синтаксис командной строки.
 
Версия №2. Мне из файла надо сделать документацию. Причем если комментов нету, то должна быть подробная выпечатка всех субов как можно подробнее.
Ну нихуя у меня с синтаксисом не выходить. Если знаешь, то подскажи как это прописать.
Т.е. еще раз: есть файл "file.pl", и из него надо сделать документацию, например html.
Если знаешь OODoc, Docperl, те что в линках, то тоже самое. Просто синтаксис командной строки.
Вы читали вообще доку по тем модулям что вы спрашиваете ?
Объясняю на примере.
Вот кусок стандартного модуля Thread.pm
Код:
=head1 SYNOPSIS

    use Thread;

    my $t = Thread->new(\&start_sub, *start_args);

    $result = $t->join;
    $result = $t->eval;
    $t->detach;

    if ($t->done) {
        $t->join;
    }

    if($t->equal($another_thread)) {
    	# ...
    }

    yield();

    my $tid = Thread->self->tid; 

    lock($scalar);
    lock(*array);
    lock(%hash);

    lock(\&sub);	# not available with ithreads

    $flags = $t->flags;	# not available with ithreads

    my *list = Thread->list;	# not available with ithreads

    use Thread 'async';

=head1 DESCRIPTION

The C<Thread> module provides multithreading support for perl.

=head1 FUNCTIONS

=over 8

=item $thread = Thread->new(\&start_sub)

=item $thread = Thread->new(\&start_sub, LIST)

Все что начинается с символа "=" - это POD (Perl's standard Plain Old Document format) блокм

вот вам пример, как его выдрать и сделать красиво с помощью тулзов на которые указал БФГ:
Код:
[gwynn*core ~]$ pod2text /usr/lib/perl5/5.8.8/Thread.pm
SYNOPSIS
        use Thread;

        my $t = Thread->new(\&start_sub, *start_args);

        $result = $t->join;
        $result = $t->eval;
        $t->detach;

        if ($t->done) {
            $t->join;
        }

        if($t->equal($another_thread)) {
            # ...
        }

        yield();

        my $tid = Thread->self->tid;

        lock($scalar);
        lock(*array);
        lock(%hash);

        lock(\&sub);        # not available with ithreads

        $flags = $t->flags; # not available with ithreads

        my *list = Thread->list;    # not available with ithreads

        use Thread 'async';

DESCRIPTION
    The "Thread" module provides multithreading support for perl.

FUNCTIONS
    $thread = Thread->new(\&start_sub)
    $thread = Thread->new(\&start_sub, LIST)

OODoc, на сколько я понимаю, это просто расширенный синтаксис, типа чтоб разрабам можно было более полно писать доку, на замену устаревшему и простому POD.

Так вот, то что вы хотите, если разрабы вашего кода в 26к строк, не удосужились запихать доку в виде POD или еще каком (без кода вы об этом не узнаете), практически не реально.
Все сабы и т.п. вам придется выдерать и анализировать руцями (поверьте перл один из сложных для чтения языков), а анализаторов перл кода я честно говоря не знаю (я все таки не девелопер по большей части)
И вообще perldoc и man вам в руки, там все есть.
 
Так как его запутить, блин, этот perldoc???
DocPerl provides a web-based interface to Perls Plain Old Documentation (POD). - как его вызвать?
 
Бля, ТС, пойми простую вещь - POD не рождается сам собой и не генерится не основе программного кода.
Это всего лишь вставленные в код куски документации. Ключевое слово "ВСТАВЛЕННЫЕ". Кем-то. До того как код попал к тебе.
А если там нет этих кусков - то на основе только кода ты ничего не получишь, халявы не будет.
Если же есть - то юзай указанные тебе утилиты.
 
Так как его запутить, блин, этот perldoc???
DocPerl provides a web-based interface to Perls Plain Old Documentation (POD). - как его вызвать?

Очень просто, введите в консоли: perldoc и о чудо, он запустился :)
DocPerl - это просто морда-парсер для сорцов с POD вставками

BFG-9000 +1
 
Бля, ТС, пойми простую вещь - POD не рождается сам собой и не генерится не основе программного кода.
Это всего лишь вставленные в код куски документации. Ключевое слово "ВСТАВЛЕННЫЕ". Кем-то. До того как код попал к тебе.
А если там нет этих кусков - то на основе только кода ты ничего не получишь, халявы не будет.
Если же есть - то юзай указанные тебе утилиты.

Очень просто, введите в консоли: perldoc и о чудо, он запустился :)
DocPerl - это просто морда-парсер для сорцов с POD вставками

BFG-9000 +1

господа! спасибо всем. Прошу понять, на сколько мне тяжело тут со всякими тефтонцами, когда на родной шпрахе кайнен розумие.
Хто и куда там с консоли запустился - не знаю. И, наверное, до февраля не узнаю.
Но скажу вам, на сколько хуёво иметь образование инженера-теплотехника, занимаясь хуй-знает-чем.
Мораль сей басни такова: что вы мне тут пели к моему вопросу не имело никакого отношения.
Ещё и как DocPerl выдает список всех субов. Не помню, какой идиёт сказал, что это нереально, но это на любом языке пишется за пять мин. Но дело не в том.... Все вы троечники...
Ладно, не обижайтезь! :-) Блядь! Мне бы ваше образование, а не, ёб вашу мать, теплотехнику :-)
Всё, нах, всем спать, охломоны, нах!
Добавлено через 3 минуты
Очень просто, введите в консоли: perldoc и о чудо, он запустился :)
DocPerl - это просто морда-парсер для сорцов с POD вставками

BFG-9000 +1

а таких как ты - вообще и в ПТУ пускать нельзя. Самое страшное, что потом такие занимают все места в академиях наук и генетику с кибернетикой определяют сам знаешь куда.
Какая нах консоль???
Посмотри на свою аватару и отдуплись. Блин...
 
Ещё и как DocPerl выдает список всех субов. Не помню, какой идиёт сказал, что это нереально, но это на любом языке пишется за пять мин.
Так хуле ж вы нам моск парили столько времени, если сами все знаете ? Никто не сказал, что нельзя сделать парсер который просто выдаст сабы, греп с этим справится на ура.
Вопрос в том, что они вам дадут ?

а таких как ты - вообще и в ПТУ пускать нельзя. Самое страшное, что потом такие занимают все места в академиях наук и генетику с кибернетикой определяют сам знаешь куда.
Это спишем на усталость...
Какая нах консоль???
Посмотри на свою аватару и отдуплись. Блин...
Если вы не знаете что такое консоль, может вам не перлом заниматься ? А в ПТУ например ? Гайки крутить.
Вам еще в самом начале ответили на все вопросы, прошу заметить без оскорблений и с примерами. Если вы на столько не адекватны, чтоб прочитать мануал, или поискать в инете лама бук и потратить несколько часов на прочтение интересующих глав, то какой может быть с вами конструктивный разговор ?

Или вы рассчитывали, что кто-то возьмет вам и на гора выдаст скрипт, который будет делать все что вы хотите ?
 
толпа скандирует "ГААЙЙЙКИИИИ ГААААЙЙККИИИИИИИИ"
 
Назад
Зверху Знизу