Thursday, July 22, 2010

Perl Sessions

Wednesday was my Perl session day, so here's a glob of the 4 sessions I attended.

New Beginnings in Perl 5

Why switch to Ruby?

  • Got fed up with jumping through hoops

  • for example, unrolling @_

    • my ($arg1,$arg2) = @_

Why come back

  • use MooseX::Declare

  • use TryCatch

  • cpanm

  • NYTProf

  • Test::Class::Sugar

“Language design is premature optimization”



What's New in Perl 5.12


Perl5 is 16 years old (!!)

New CPAN goodness

  • Moose

  • Plack

  • cpanm

  • Devel::Declare

  • AnyEvent

  • Devel::NYTProf

Perl6 is a completely different language from Perl5

  • Perl5 and Perl6 are different versions of Larry's brain

  • rakudo.org

  • perl6 will not replace Perl5

What's new in Perl 5.12

  • 5.10 is not too new to use anymore

  • use 5.12.0 use strict

  • deprecations warn by default

  • suidperl is dead

  • Y2.038K compliant

  • DTrace support

  • sub do_something{...}


Perl 6


Perl 6 language specification

  • separate from implementation

Perl 6 implementations

  • Rakudo

  • Pugs

Rakudo *

  • early adopter distribution of Perl 6


Profiling Perl with Devel::NYTProf


Subroutine

  • Measures time spent in a subroutine

Statement

  • measure time from one statement to the next


Output

  • kcachegrind

  • HTML

  • Tree Map

  • DOT file (graphviz)


Exclusive time

  • Time spent executing statements in the current subroutine

Inclusive time

  • Exclusive time + time spent is called routines



No comments:

Post a Comment