SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Downloaden Sie, um offline zu lesen
Использование Perl 6 Pod

    Александр Загацкий


       14 мая 2011
Кто я




     http://search.cpan.org/∼zag/
     lang/rakudo ( FreeBSD )
     книга "Все о Perl 6"




Использование Perl 6 Pod            Александр Загацкий
Содержание




     Основные моменты:
            Введение в Pod
            Структура Pod
            Фитчи Pod
            Реализации
            Применение Pod




Использование Perl 6 Pod     Александр Загацкий
Synopsis 26




     18 октября 1994 В списке анонса perl 5.000 присутвует
                  поддержка POD
     9 апреля 2005 Synopsis 26.Автор - Damian Conway.
     25 апреля 2007 Вторая редакция
     16 августа 2009 S26 - The Next Generation
     31 июля 2010 Последняя редакция. :!DRAFT
Использование Perl 6 Pod                                 Александр Загацкий
POD -> Pod




            POD - Perl Old Documentation

            Pod в S26:
            Pod - является эволюцией POD. В сравнении с POD, Perl
             6 Pod более однороден, компактен и выразительнее. Pod
             также характеризуется описательной нотацией разметки,
                            вместо презентационной.

     Таким образом Pod избавился от слова "старый".




Использование Perl 6 Pod                                  Александр Загацкий
Отличия POD от Pod: Границы блоков документции.
     POD
           §                                                 ¤
               1   =head1
               2   ...
               3
               4   =cut
           ¦                                                 ¥
     Pod
            Разграниченные блоки / Delimited blocks
            Блоки-параграфы / Paragraph blocks
            Сокращенные блоки / Abbreviated blocks
            Блоки-деклараторы / Declarator blocks (*)




Использование Perl 6 Pod                                Александр Загацкий
Параметры блоков

     Конфигурационные параметры представлены парной нотацией
     в стиле perl6 (S02)




            =for Image :title(’3 стиля для =table’)
            = :align(’center’) :!border
            src/3block_datapng.png



Использование Perl 6 Pod                              Александр Загацкий
Равнозначность стилевых блоков

     Типы блоков одинаково представлены во внутренней структуре
     документа.




Использование Perl 6 Pod                               Александр Загацкий
Блоки-деклараторы / Declarator blocks



     Блоки без имен.Ассоциируются с ближайшим декларатором.
           §                                                                 ¤
               1   sub fu (          #= This text stored in &fu.WHY
               2     Any    $bar,    #= This text stored in $bar.WHY
               3     Mode   :$baz   #= This text stored in $baz.WHY
               4       ) { ... }
               5
               6   #= This is a special chainsaw
               7   my SwissArmy $chainsaw #= (It has a rocket launcher)
               8
               9   say $chainsaw.WHY; # prints: This is a special chainsaw
             10                     #        (It has a rocket launcher)
           ¦                                                                 ¥




Использование Perl 6 Pod                                               Александр Загацкий
access to pod/doc text by code




Использование Perl 6 Pod         Александр Загацкий
Особенности Pod


            =item, =itemN - уровни в списках
            =table определение таблиц
            контекстуальные псевдонимы
            =SYNOPSIS, =NAME ... - семантические блоки
            =config, :like - предварительное конфигурирование и
            параметр :like
            DOC use - расширяемость




Использование Perl 6 Pod                                  Александр Загацкий
Уровни в списках

           §                                     ¤
               1   =item1 Animal
               2   =item2    Vertebrate
               3   =item2    Invertebrate
               4
               5   =item1 Phase
               6   =item2    Solid
               7   =item2    Chocolate
           ¦                                     ¥

     Результат
            * Animal
              - Vertebrate
              - Invertebrate

            * Phase
              - Solid
              - Chocolate

Использование Perl 6 Pod                    Александр Загацкий
Таблицы (=table)




Использование Perl 6 Pod   Александр Загацкий
Таблицы (=table)




Использование Perl 6 Pod   Александр Загацкий
Контекстуальные псевдонимы

     Включение кода без копирования
           §                                                               ¤
               1   # This is actual code...
               2   sub hash_function ($key)
               3   =alias HASHCODE
               4   {
               5       my $hash = 0;
               6       for $key.split("") -> $char {
               7           $hash = $hash*33 + $char.ord;
               8       }
               9       return $hash;
             10    }
             11    =begin pod
             12    An ancient (but fast) hashing algorithm is used:
             13    =begin code :allow<A>
             14     A<HASHCODE>
             15    =end code
             16    =end pod
           ¦                                                               ¥



Использование Perl 6 Pod                                              Александр Загацкий
Семантические блоки




            =begin SYNOPSIS
                use Magic::Parser
                my Magic::Parser $parser .= new();
                my $tree = $parser.parse($fh);
            =end SYNOPSIS

Использование Perl 6 Pod                             Александр Загацкий
=config и :like

     Предварительное конфигурирование

       =config       head1 :formatted<B   U> :numbered
       =config       head2 :like<head1>   :formatted<I>
       =config       head3                :formatted<U>
       =config       head4 :like<head3>   :formatted<I>
       =config       C<> :allow<E I>


     :like - блок имеет такие же параметры форматирования как
     имя блока указанного в качестве значения.

       =for para :like<head4>
       some text




Использование Perl 6 Pod                                  Александр Загацкий
Расширяемость

            Режим документации
            perl –doc DBI::DBD::Metadata
            Подключение расширений

            DOC use Pod6::Image;

            =Image http://example.com/perl_logo_32x104.png


     Переопределение Pod обработчика:

           DOC INIT {
                use My::Pod::To::Text;
                pod_to_text( $=POD );
                exit(0);
            }


Использование Perl 6 Pod                              Александр Загацкий
1.Реализация на perl5 (Domian Conway)
     http://search.cpan.org/dist/Perl6-Perldoc/




Использование Perl 6 Pod                          Александр Загацкий
2.Реализация на perl5: Perl6::Pod
     http://search.cpan.org/dist/Perl6-Pod/




Использование Perl 6 Pod                      Александр Загацкий
3.Реaлизация на Rakudo (Martin Berends)

     http://github.com/eric256/perl6-examples/tree/master/bin




Использование Perl 6 Pod                                   Александр Загацкий
4.Реaлизация на Rakudo (SUPERNOVA)
     http://github.com/lue/SUPERNOVA




Использование Perl 6 Pod               Александр Загацкий
5.Google Summer of Code
     "Pod parser for Rakudo"




Использование Perl 6 Pod       Александр Загацкий
Презентации: Perl6::Pod::Slide



     Perl6::Pod::Slide: Latex + beamer

           §                                                                     ¤
               1   =begin Slide :title(’5.Google Summer of Code’)
               2   "Pod parser for Rakudo"
               3   =Image i/p6-gscode.jpg
               4   =end Slide
           ¦                                                                     ¥


            + возможность ввода формул
                                                     1−α    2        kd
                   Γ0 S0 (1 − α)2 = kd α2    ⇒                  =
                                                      α             Γ0 S0




Использование Perl 6 Pod                                                    Александр Загацкий
Perl6::Pod::Slide: Списки



     Перечисляемые списки:

       =item руководства для конечных пользователей
       =item Wiki, CMS ...
       =item Элементы сруктуры документа


     Результат:




Использование Perl 6 Pod                              Александр Загацкий
Perl6::Pod::Slide: Списки



     Перечисляемые списки:

       =item руководства для конечных пользователей
       =item Wiki, CMS ...
       =item Элементы сруктуры документа


     Результат:
            руководства для конечных пользователей
            Wiki, CMS ...
            Элементы сруктуры документа




Использование Perl 6 Pod                              Александр Загацкий
Perl6::Pod::Slide: Списки и атрибуты


     Нумерованные списки и атрибут :pause:

       =for item :numbered
       Списки
       =for item :numbered :pause
       Таблицы
       =for item :numbered
       Уровни заголовков


     Результат:




Использование Perl 6 Pod                     Александр Загацкий
Perl6::Pod::Slide: Списки и атрибуты


     Нумерованные списки и атрибут :pause:

       =for item :numbered
       Списки
       =for item :numbered :pause
       Таблицы
       =for item :numbered
       Уровни заголовков


     Результат:
        1   Списки
        2   Таблицы




Использование Perl 6 Pod                     Александр Загацкий
Perl6::Pod::Slide: Списки и атрибуты


     Нумерованные списки и атрибут :pause:

       =for item :numbered
       Списки
       =for item :numbered :pause
       Таблицы
       =for item :numbered
       Уровни заголовков


     Результат:
        1   Списки
        2   Таблицы
        3   Уровни заголовков


Использование Perl 6 Pod                     Александр Загацкий
Perl6::Pod::Slide: Создание pdf




     Экспорт в Tex:

       pod6slide < tech_docs.pod > tech_docs.tex


     Конвертация в Pdf:

       pdflatex tech_docs.tex




Использование Perl 6 Pod                           Александр Загацкий
zag.ru: Формат для блога
     Расширяем для поддержки доп функционала. Например:
     =Image




Использование Perl 6 Pod                            Александр Загацкий
Формат для книги о Perl 6
     Книга "Все о Perl 6". http://zag.ru/perl6-book/




Использование Perl 6 Pod                               Александр Загацкий
Глава посвященная Pod




Использование Perl 6 Pod   Александр Загацкий
Perl 6 Pod to HTML: http://zag.ru/perl6-pod/




Использование Perl 6 Pod                       Александр Загацкий
Вопросы ?




            S26 Documentation
            https://github.com/zag/specs/raw/master/S26-
            documentation.pod
            home page, mail http://zag.ru, zag(at)cpan.org
Использование Perl 6 Pod                                     Александр Загацкий

Weitere ähnliche Inhalte

Was ist angesagt?

Hacking PostgreSQL. Физическое представление данных
Hacking PostgreSQL. Физическое представление данныхHacking PostgreSQL. Физическое представление данных
Hacking PostgreSQL. Физическое представление данных
Anastasia Lubennikova
 
Hacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кодаHacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кода
Anastasia Lubennikova
 
СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"
Technopark
 
Web осень 2013 лекция 3
Web осень 2013 лекция 3Web осень 2013 лекция 3
Web осень 2013 лекция 3
Technopark
 
Web осень 2013 лекция 1
Web осень 2013 лекция 1Web осень 2013 лекция 1
Web осень 2013 лекция 1
Technopark
 
О безопасном использовании PHP wrappers
О безопасном использовании PHP wrappersО безопасном использовании PHP wrappers
О безопасном использовании PHP wrappers
Positive Hack Days
 
PHP Tricks
PHP TricksPHP Tricks
PHP Tricks
BlackFan
 
Презентация Neo4j на ADD-3
Презентация Neo4j на ADD-3Презентация Neo4j на ADD-3
Презентация Neo4j на ADD-3
Evgeny Gazdovsky
 
Что нового в PHP-5.3
Что нового в PHP-5.3 Что нового в PHP-5.3
Что нового в PHP-5.3
phpclub
 
«Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus
 «Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus «Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus
«Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus
0xdec0de
 

Was ist angesagt? (19)

Hacking PostgreSQL. Локальная память процессов. Контексты памяти.
Hacking PostgreSQL. Локальная память процессов. Контексты памяти.Hacking PostgreSQL. Локальная память процессов. Контексты памяти.
Hacking PostgreSQL. Локальная память процессов. Контексты памяти.
 
Документирование исходных текстов (javadoc)
Документирование исходных текстов (javadoc)Документирование исходных текстов (javadoc)
Документирование исходных текстов (javadoc)
 
Hacking PostgreSQL. Физическое представление данных
Hacking PostgreSQL. Физическое представление данныхHacking PostgreSQL. Физическое представление данных
Hacking PostgreSQL. Физическое представление данных
 
file handling in c
file handling in cfile handling in c
file handling in c
 
Hacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кодаHacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кода
 
СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"
 
Web осень 2013 лекция 3
Web осень 2013 лекция 3Web осень 2013 лекция 3
Web осень 2013 лекция 3
 
Web осень 2013 лекция 1
Web осень 2013 лекция 1Web осень 2013 лекция 1
Web осень 2013 лекция 1
 
О безопасном использовании PHP wrappers
О безопасном использовании PHP wrappersО безопасном использовании PHP wrappers
О безопасном использовании PHP wrappers
 
Очередной скучный доклад про логгирование
Очередной скучный доклад про логгированиеОчередной скучный доклад про логгирование
Очередной скучный доклад про логгирование
 
Как мы делаем модули PHP в Badoo – Антон Довгаль
Как мы делаем модули PHP в Badoo – Антон ДовгальКак мы делаем модули PHP в Badoo – Антон Довгаль
Как мы делаем модули PHP в Badoo – Антон Довгаль
 
PHP Tricks
PHP TricksPHP Tricks
PHP Tricks
 
Making of external DSL for Django ORM - Павел Петлинский, Rambler&Co
Making of external DSL for Django ORM - Павел Петлинский, Rambler&CoMaking of external DSL for Django ORM - Павел Петлинский, Rambler&Co
Making of external DSL for Django ORM - Павел Петлинский, Rambler&Co
 
Презентация Neo4j на ADD-3
Презентация Neo4j на ADD-3Презентация Neo4j на ADD-3
Презентация Neo4j на ADD-3
 
Что нового в PHP-5.3
Что нового в PHP-5.3 Что нового в PHP-5.3
Что нового в PHP-5.3
 
SWIG — cоздание мультиязыковых интерфейсов для C/C++ библиотек
SWIG — cоздание мультиязыковых интерфейсов для C/C++ библиотекSWIG — cоздание мультиязыковых интерфейсов для C/C++ библиотек
SWIG — cоздание мультиязыковых интерфейсов для C/C++ библиотек
 
Введение в реверс-инжиниринг вредоносного ПО - Сергей Харюк
Введение в реверс-инжиниринг вредоносного ПО - Сергей ХарюкВведение в реверс-инжиниринг вредоносного ПО - Сергей Харюк
Введение в реверс-инжиниринг вредоносного ПО - Сергей Харюк
 
Haskell
HaskellHaskell
Haskell
 
«Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus
 «Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus «Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus
«Introduction to malware reverse engineering» by Sergey Kharyuk aka ximerus
 

Ähnlich wie Using perl6-pod

Groovy On Grails
Groovy On GrailsGroovy On Grails
Groovy On Grails
guest32215a
 
CodeFest 2012. Нелюбин Д. — Neo4j — графовая база данных
CodeFest 2012. Нелюбин Д. — Neo4j — графовая база данныхCodeFest 2012. Нелюбин Д. — Neo4j — графовая база данных
CodeFest 2012. Нелюбин Д. — Neo4j — графовая база данных
CodeFest
 
Мастер-класс по BigData Tools для HappyDev'15
Мастер-класс по BigData Tools для HappyDev'15Мастер-класс по BigData Tools для HappyDev'15
Мастер-класс по BigData Tools для HappyDev'15
Alexey Zinoviev
 
Migrating from Perl 5 to 6
Migrating from Perl 5 to 6Migrating from Perl 5 to 6
Migrating from Perl 5 to 6
Andrew Shitov
 
plwww (24.03) MEPHI (PHDays)
plwww (24.03) MEPHI (PHDays)plwww (24.03) MEPHI (PHDays)
plwww (24.03) MEPHI (PHDays)
ygoltsev
 

Ähnlich wie Using perl6-pod (20)

Perl6 pod as new documentation format
Perl6 pod as new documentation formatPerl6 pod as new documentation format
Perl6 pod as new documentation format
 
Present saint-per3-by-pavel-vlasov
Present saint-per3-by-pavel-vlasovPresent saint-per3-by-pavel-vlasov
Present saint-per3-by-pavel-vlasov
 
Приручаем linux-консоль
Приручаем linux-консольПриручаем linux-консоль
Приручаем linux-консоль
 
Groovy On Grails
Groovy On GrailsGroovy On Grails
Groovy On Grails
 
Perl in da shell
Perl in da shellPerl in da shell
Perl in da shell
 
Лекция 7. Введение в Pig и Hive
Лекция 7. Введение в Pig и HiveЛекция 7. Введение в Pig и Hive
Лекция 7. Введение в Pig и Hive
 
poudriere или как я перестал волноваться и полюбил pkg
poudriere или как я перестал волноваться и полюбил pkgpoudriere или как я перестал волноваться и полюбил pkg
poudriere или как я перестал волноваться и полюбил pkg
 
CodeFest 2012. Нелюбин Д. — Neo4j — графовая база данных
CodeFest 2012. Нелюбин Д. — Neo4j — графовая база данныхCodeFest 2012. Нелюбин Д. — Neo4j — графовая база данных
CodeFest 2012. Нелюбин Д. — Neo4j — графовая база данных
 
Дмитрий Щадей "Зачем и как мы используем jsLint"
Дмитрий Щадей "Зачем и как мы используем jsLint"Дмитрий Щадей "Зачем и как мы используем jsLint"
Дмитрий Щадей "Зачем и как мы используем jsLint"
 
Мастер-класс по BigData Tools для HappyDev'15
Мастер-класс по BigData Tools для HappyDev'15Мастер-класс по BigData Tools для HappyDev'15
Мастер-класс по BigData Tools для HappyDev'15
 
09 - Hadoop. Pig
09 - Hadoop. Pig09 - Hadoop. Pig
09 - Hadoop. Pig
 
Docker penetration
Docker penetrationDocker penetration
Docker penetration
 
Проникновение в Docker с примерами
Проникновение в Docker с примерамиПроникновение в Docker с примерами
Проникновение в Docker с примерами
 
Migrating from Perl 5 to 6
Migrating from Perl 5 to 6Migrating from Perl 5 to 6
Migrating from Perl 5 to 6
 
Опыт использования Spark, Основано на реальных событиях
Опыт использования Spark, Основано на реальных событияхОпыт использования Spark, Основано на реальных событиях
Опыт использования Spark, Основано на реальных событиях
 
REPL в Node.js: улучшаем быт разработчик
REPL в Node.js: улучшаем быт разработчикREPL в Node.js: улучшаем быт разработчик
REPL в Node.js: улучшаем быт разработчик
 
Андрей Субботин "Автоматизация локализации iOS-приложений"
Андрей Субботин "Автоматизация локализации iOS-приложений"Андрей Субботин "Автоматизация локализации iOS-приложений"
Андрей Субботин "Автоматизация локализации iOS-приложений"
 
Что нового в Perl 5.14
Что нового в Perl 5.14Что нового в Perl 5.14
Что нового в Perl 5.14
 
plwww (24.03) MEPHI (PHDays)
plwww (24.03) MEPHI (PHDays)plwww (24.03) MEPHI (PHDays)
plwww (24.03) MEPHI (PHDays)
 
Интеграция Яндекс Сервер
Интеграция Яндекс СерверИнтеграция Яндекс Сервер
Интеграция Яндекс Сервер
 

Using perl6-pod

  • 1. Использование Perl 6 Pod Александр Загацкий 14 мая 2011
  • 2. Кто я http://search.cpan.org/∼zag/ lang/rakudo ( FreeBSD ) книга "Все о Perl 6" Использование Perl 6 Pod Александр Загацкий
  • 3. Содержание Основные моменты: Введение в Pod Структура Pod Фитчи Pod Реализации Применение Pod Использование Perl 6 Pod Александр Загацкий
  • 4. Synopsis 26 18 октября 1994 В списке анонса perl 5.000 присутвует поддержка POD 9 апреля 2005 Synopsis 26.Автор - Damian Conway. 25 апреля 2007 Вторая редакция 16 августа 2009 S26 - The Next Generation 31 июля 2010 Последняя редакция. :!DRAFT Использование Perl 6 Pod Александр Загацкий
  • 5. POD -> Pod POD - Perl Old Documentation Pod в S26: Pod - является эволюцией POD. В сравнении с POD, Perl 6 Pod более однороден, компактен и выразительнее. Pod также характеризуется описательной нотацией разметки, вместо презентационной. Таким образом Pod избавился от слова "старый". Использование Perl 6 Pod Александр Загацкий
  • 6. Отличия POD от Pod: Границы блоков документции. POD § ¤ 1 =head1 2 ... 3 4 =cut ¦ ¥ Pod Разграниченные блоки / Delimited blocks Блоки-параграфы / Paragraph blocks Сокращенные блоки / Abbreviated blocks Блоки-деклараторы / Declarator blocks (*) Использование Perl 6 Pod Александр Загацкий
  • 7. Параметры блоков Конфигурационные параметры представлены парной нотацией в стиле perl6 (S02) =for Image :title(’3 стиля для =table’) = :align(’center’) :!border src/3block_datapng.png Использование Perl 6 Pod Александр Загацкий
  • 8. Равнозначность стилевых блоков Типы блоков одинаково представлены во внутренней структуре документа. Использование Perl 6 Pod Александр Загацкий
  • 9. Блоки-деклараторы / Declarator blocks Блоки без имен.Ассоциируются с ближайшим декларатором. § ¤ 1 sub fu ( #= This text stored in &fu.WHY 2 Any $bar, #= This text stored in $bar.WHY 3 Mode :$baz #= This text stored in $baz.WHY 4 ) { ... } 5 6 #= This is a special chainsaw 7 my SwissArmy $chainsaw #= (It has a rocket launcher) 8 9 say $chainsaw.WHY; # prints: This is a special chainsaw 10 # (It has a rocket launcher) ¦ ¥ Использование Perl 6 Pod Александр Загацкий
  • 10. access to pod/doc text by code Использование Perl 6 Pod Александр Загацкий
  • 11. Особенности Pod =item, =itemN - уровни в списках =table определение таблиц контекстуальные псевдонимы =SYNOPSIS, =NAME ... - семантические блоки =config, :like - предварительное конфигурирование и параметр :like DOC use - расширяемость Использование Perl 6 Pod Александр Загацкий
  • 12. Уровни в списках § ¤ 1 =item1 Animal 2 =item2 Vertebrate 3 =item2 Invertebrate 4 5 =item1 Phase 6 =item2 Solid 7 =item2 Chocolate ¦ ¥ Результат * Animal - Vertebrate - Invertebrate * Phase - Solid - Chocolate Использование Perl 6 Pod Александр Загацкий
  • 13. Таблицы (=table) Использование Perl 6 Pod Александр Загацкий
  • 14. Таблицы (=table) Использование Perl 6 Pod Александр Загацкий
  • 15. Контекстуальные псевдонимы Включение кода без копирования § ¤ 1 # This is actual code... 2 sub hash_function ($key) 3 =alias HASHCODE 4 { 5 my $hash = 0; 6 for $key.split("") -> $char { 7 $hash = $hash*33 + $char.ord; 8 } 9 return $hash; 10 } 11 =begin pod 12 An ancient (but fast) hashing algorithm is used: 13 =begin code :allow<A> 14 A<HASHCODE> 15 =end code 16 =end pod ¦ ¥ Использование Perl 6 Pod Александр Загацкий
  • 16. Семантические блоки =begin SYNOPSIS use Magic::Parser my Magic::Parser $parser .= new(); my $tree = $parser.parse($fh); =end SYNOPSIS Использование Perl 6 Pod Александр Загацкий
  • 17. =config и :like Предварительное конфигурирование =config head1 :formatted<B U> :numbered =config head2 :like<head1> :formatted<I> =config head3 :formatted<U> =config head4 :like<head3> :formatted<I> =config C<> :allow<E I> :like - блок имеет такие же параметры форматирования как имя блока указанного в качестве значения. =for para :like<head4> some text Использование Perl 6 Pod Александр Загацкий
  • 18. Расширяемость Режим документации perl –doc DBI::DBD::Metadata Подключение расширений DOC use Pod6::Image; =Image http://example.com/perl_logo_32x104.png Переопределение Pod обработчика: DOC INIT { use My::Pod::To::Text; pod_to_text( $=POD ); exit(0); } Использование Perl 6 Pod Александр Загацкий
  • 19. 1.Реализация на perl5 (Domian Conway) http://search.cpan.org/dist/Perl6-Perldoc/ Использование Perl 6 Pod Александр Загацкий
  • 20. 2.Реализация на perl5: Perl6::Pod http://search.cpan.org/dist/Perl6-Pod/ Использование Perl 6 Pod Александр Загацкий
  • 21. 3.Реaлизация на Rakudo (Martin Berends) http://github.com/eric256/perl6-examples/tree/master/bin Использование Perl 6 Pod Александр Загацкий
  • 22. 4.Реaлизация на Rakudo (SUPERNOVA) http://github.com/lue/SUPERNOVA Использование Perl 6 Pod Александр Загацкий
  • 23. 5.Google Summer of Code "Pod parser for Rakudo" Использование Perl 6 Pod Александр Загацкий
  • 24. Презентации: Perl6::Pod::Slide Perl6::Pod::Slide: Latex + beamer § ¤ 1 =begin Slide :title(’5.Google Summer of Code’) 2 "Pod parser for Rakudo" 3 =Image i/p6-gscode.jpg 4 =end Slide ¦ ¥ + возможность ввода формул 1−α 2 kd Γ0 S0 (1 − α)2 = kd α2 ⇒ = α Γ0 S0 Использование Perl 6 Pod Александр Загацкий
  • 25. Perl6::Pod::Slide: Списки Перечисляемые списки: =item руководства для конечных пользователей =item Wiki, CMS ... =item Элементы сруктуры документа Результат: Использование Perl 6 Pod Александр Загацкий
  • 26. Perl6::Pod::Slide: Списки Перечисляемые списки: =item руководства для конечных пользователей =item Wiki, CMS ... =item Элементы сруктуры документа Результат: руководства для конечных пользователей Wiki, CMS ... Элементы сруктуры документа Использование Perl 6 Pod Александр Загацкий
  • 27. Perl6::Pod::Slide: Списки и атрибуты Нумерованные списки и атрибут :pause: =for item :numbered Списки =for item :numbered :pause Таблицы =for item :numbered Уровни заголовков Результат: Использование Perl 6 Pod Александр Загацкий
  • 28. Perl6::Pod::Slide: Списки и атрибуты Нумерованные списки и атрибут :pause: =for item :numbered Списки =for item :numbered :pause Таблицы =for item :numbered Уровни заголовков Результат: 1 Списки 2 Таблицы Использование Perl 6 Pod Александр Загацкий
  • 29. Perl6::Pod::Slide: Списки и атрибуты Нумерованные списки и атрибут :pause: =for item :numbered Списки =for item :numbered :pause Таблицы =for item :numbered Уровни заголовков Результат: 1 Списки 2 Таблицы 3 Уровни заголовков Использование Perl 6 Pod Александр Загацкий
  • 30. Perl6::Pod::Slide: Создание pdf Экспорт в Tex: pod6slide < tech_docs.pod > tech_docs.tex Конвертация в Pdf: pdflatex tech_docs.tex Использование Perl 6 Pod Александр Загацкий
  • 31. zag.ru: Формат для блога Расширяем для поддержки доп функционала. Например: =Image Использование Perl 6 Pod Александр Загацкий
  • 32. Формат для книги о Perl 6 Книга "Все о Perl 6". http://zag.ru/perl6-book/ Использование Perl 6 Pod Александр Загацкий
  • 33. Глава посвященная Pod Использование Perl 6 Pod Александр Загацкий
  • 34. Perl 6 Pod to HTML: http://zag.ru/perl6-pod/ Использование Perl 6 Pod Александр Загацкий
  • 35. Вопросы ? S26 Documentation https://github.com/zag/specs/raw/master/S26- documentation.pod home page, mail http://zag.ru, zag(at)cpan.org Использование Perl 6 Pod Александр Загацкий