Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • .... why the trailing "no Moose"?

    • It removed the functions that Moose exports into your package. It would be annoying if someone tried to call $object->has :)

    • The lovely MooseX::Declare [cpan.org] lets you avoid even that (and it's an incredible module), but unfortunately, it's very alpha and has plenty of bugs. Still, look what it buys you:

      use MooseX::Declare;

      class BankAccount {
          has 'balance' => ( isa => 'Num', is => 'rw', default => 0 );

          method deposit (Num $amount) {
              $self->balance( $self->balance + $amount );
          }

          method withdraw (Num $amount) {
             

      • > I can't wait until that's production ready.

        Ohhh. Shiny! :-)

      • All MooseX::Declare does to not require you to unimport all Moose keywords (and possibly other imports) is

        use namespace::clean -except => 'meta';

        to remove all previously defined and imported functions (except for the 'meta' method Moose gives you) at the end of compile time. No need to wait for anything.

      • I can't wait until that's production ready.

        I think everyone who left the London Perl tech talk last night felt & thought the exactly same thing.

        Patience is a virtue!

        /I3az/