Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Advanced Perl 2013 - Perl programming /LUGA

Advanced Perl 2013 - Perl programming /LUGA

Slides for the LUGA / LIT Workshop about Perl programming with modern toolchains.

Avatar for Ulrich Habel

Ulrich Habel

March 23, 2013
Tweet

More Decks by Ulrich Habel

Other Decks in Technology

Transcript

  1. "Life is a data structure" - sometimes it's hard to

    build the AST - myself, Nov. 2012 Montag, 25. März 13
  2. Agenda Crashkurs Perl / Setup der Boxen Lebenswertes Perl (local::lib,

    perlbrew, cpanm) Wunderkinder (scalar/Data::Dumper) Kommandozeilen Affären (App::Cmd) Rule em all! (Dist::Zilla) App::Cmd - reloaded Du und das Objekt (Moo) Objekt, Alter? Objekt! (Moo, Moo::Role) Montag, 25. März 13
  3. Tools of trade local::lib - Module "lokal" verwenden perlbrew -

    Erzeugen eines benutzbaren Perls cpanm - Installation von Modulen, Erweiterungen Dist::Zilla - Module sinnvoll erstellen Montag, 25. März 13
  4. local::lib Installiert Perl Module im Home Directory Benutzbar für "extlib"

    bundles $ perl Makefile.PL --bootstrap $ make test && make install $ echo 'eval $(perl -I$HOME/perl5/lib/perl5 \ -Mlocal::lib)' >>~/.bashrc Montag, 25. März 13
  5. perlbrew Installation denkbar einfach Erfordert perl-5.8.8, make, gcc $ curl

    -kL http://install.perlbrew.pl | bash Montag, 25. März 13
  6. perlbrew - commons $ perlbrew install 5.16.3 $ perlbrew switch

    5.16.3 $ perlbrew available $ perlbrew install-cpanm $ perlbrew install-ack $ export PERLBREW_ROOT=/opt/perl5 Montag, 25. März 13
  7. cpanm $ curl -LO http://xrl.us/cpanm && \ chmod +x cpanm

    Req: gcc, make, tar, perl >= 5.88, Module::Build (core >= 5.10.1) Montag, 25. März 13
  8. cpanm - commons $ cpanm Dist::Zilla $ cpanm --installdeps .

    $ cpanm -L extlib Dist::Zilla # uncommon - useful $ cpanm --mirror-only Montag, 25. März 13
  9. dzil - commons $ dzil setup $ dzil new Luga::Talk

    (dist.ini - lib/...) Montag, 25. März 13