Perl система сборки с
                         нативным DSL

                            YAPC::RU::2010




среда, 16 июня 2010 г.
Что это такое
                    • Сборка приложения на основе файла
                         зависимостей. (примеры: make &&
                         Makefile, ant + xml-config)
                    • «Нативный DSL» означает лишь то, что
                         языком описания правил является язык
                         реализации. (пример: программа rake в
                         ruby)


среда, 16 июня 2010 г.
Почему нативный
                              DSL
                    •    просто в использовании.

                    •    легко вносить изменения/расширять (не надо
                         переписывать грамматики и проще изменять
                         логику)

                    •    прямое использование библиотек языка (для
                         Perl - это весь CPAN!)

                    •    Хорошая статья на эту тему М. Фаулера: http://
                         martinfowler.com/articles/rake.html



среда, 16 июня 2010 г.
Почему появилась такая идея

                    •     "такая корова нужна самому" Хочу сборку для
                          своего проекта и не хочу make. :)

                    •     "мода" "воровать" из других языков их
                          прикольные фичи. (Хороший пример – plack.)

                    •     "вклад в коммьюнити". Надеюсь, что пригодится
                          не только мне.

                    •     "гордость и предубеждение" Мой первый open
                          source.

                    •                         «Пусть расцветают сто
                          цветов, пусть соперничают сто школ» 
                          (император Цинь Шихуан).
среда, 16 июня 2010 г.
Системы сборки в
                          других языках
                    • ruby – rake
                    • php – pake (Surprise!!! :)
                    • python – Scons, Waf
                    • java, c#, .Net – (n)ant внешний xmlish DSL)
                    • http://www.scons.org/wiki/
                         SconsVsOtherBuildTools


среда, 16 июня 2010 г.
в Perl много всего

                    • Makepp (Makefile) - make на perl
                    • pake (Pakefile) - почти то что нужно :)
                    • Shipwright
                    • Module::Install, MakeMaker, Builder & etc

среда, 16 июня 2010 г.
Нравится в pake (Perl)

                    • простой
                    • можно использовать
                    • код есть на github


среда, 16 июня 2010 г.
Не нравится
                    •    название :) (php-исты «сперли», && http://
                         www.urbandictionary.com/define.php?term=pake on Hawaii:
                         Person who is frugal. ... used as a sort of ethnic slur in Hawaii to
                         describe a Chinese person)

                    •    нет свежего кода с 3 Jan 2009 

                    •    нет общего способа писать расширения. (На cpan ничего нет
                         для pake). (ant таски)

                    •    неинформативные сообщения об ошибках (используется do
                         для выполнения Pakefile)

                    •    Не выкатывается из CPAN под Mac OS X :)



среда, 16 июня 2010 г.
Цель лайтинга

                    • Обратная связь
                    • Возможно интересно кому-то еще
                    • Помощь (код, идеи)


среда, 16 июня 2010 г.

More Related Content

PPTX
Сервер-агрегатор на python (аля Xscript FEST), Сумин Андрей, Сабуренков Михаи...
PDF
ODP
Perl resources
PPTX
Go и fuse
PDF
To Go или не to Go
PPTX
Корпусная лингвистика:
компиляция корпуса устной речи
PPT
Домен РФ: кому, зачем, как минимизировать риски. Первые итоги приоритетной ре...
PPTX
Мобильная коллаборация
Сервер-агрегатор на python (аля Xscript FEST), Сумин Андрей, Сабуренков Михаи...
Perl resources
Go и fuse
To Go или не to Go
Корпусная лингвистика:
компиляция корпуса устной речи
Домен РФ: кому, зачем, как минимизировать риски. Первые итоги приоритетной ре...
Мобильная коллаборация

Similar to Present yapc2010 (8)

PDF
CPAN: модули, авторы и документация
ODP
Perl introduction
PDF
CPAN: модули, авторы и документация
KEY
Package managers
PDF
Иван Крутов - Автоматизация сборки Java-проекта
PPTX
Scripting languages
PDF
Erlang and OCaml Experience at Echo
PDF
Лев Валкин — Кое-что про Erlang
CPAN: модули, авторы и документация
Perl introduction
CPAN: модули, авторы и документация
Package managers
Иван Крутов - Автоматизация сборки Java-проекта
Scripting languages
Erlang and OCaml Experience at Echo
Лев Валкин — Кое-что про Erlang
Ad

Present yapc2010

  • 1. Perl система сборки с нативным DSL YAPC::RU::2010 среда, 16 июня 2010 г.
  • 2. Что это такое • Сборка приложения на основе файла зависимостей. (примеры: make && Makefile, ant + xml-config) • «Нативный DSL» означает лишь то, что языком описания правил является язык реализации. (пример: программа rake в ruby) среда, 16 июня 2010 г.
  • 3. Почему нативный DSL • просто в использовании. • легко вносить изменения/расширять (не надо переписывать грамматики и проще изменять логику) • прямое использование библиотек языка (для Perl - это весь CPAN!) • Хорошая статья на эту тему М. Фаулера: http:// martinfowler.com/articles/rake.html среда, 16 июня 2010 г.
  • 4. Почему появилась такая идея • "такая корова нужна самому" Хочу сборку для своего проекта и не хочу make. :) • "мода" "воровать" из других языков их прикольные фичи. (Хороший пример – plack.) • "вклад в коммьюнити". Надеюсь, что пригодится не только мне. • "гордость и предубеждение" Мой первый open source. • «Пусть расцветают сто цветов, пусть соперничают сто школ»  (император Цинь Шихуан). среда, 16 июня 2010 г.
  • 5. Системы сборки в других языках • ruby – rake • php – pake (Surprise!!! :) • python – Scons, Waf • java, c#, .Net – (n)ant внешний xmlish DSL) • http://www.scons.org/wiki/ SconsVsOtherBuildTools среда, 16 июня 2010 г.
  • 6. в Perl много всего • Makepp (Makefile) - make на perl • pake (Pakefile) - почти то что нужно :) • Shipwright • Module::Install, MakeMaker, Builder & etc среда, 16 июня 2010 г.
  • 7. Нравится в pake (Perl) • простой • можно использовать • код есть на github среда, 16 июня 2010 г.
  • 8. Не нравится • название :) (php-исты «сперли», && http:// www.urbandictionary.com/define.php?term=pake on Hawaii: Person who is frugal. ... used as a sort of ethnic slur in Hawaii to describe a Chinese person) • нет свежего кода с 3 Jan 2009  • нет общего способа писать расширения. (На cpan ничего нет для pake). (ant таски) • неинформативные сообщения об ошибках (используется do для выполнения Pakefile) • Не выкатывается из CPAN под Mac OS X :) среда, 16 июня 2010 г.
  • 9. Цель лайтинга • Обратная связь • Возможно интересно кому-то еще • Помощь (код, идеи) среда, 16 июня 2010 г.