1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
#!perl -w
use strict;
use Benchmark qw(:all);
{
package MyMoose;
use Moose;
has [qw(foo bar baz)] => (
is => 'rw',
isa => 'Str',
default => 'qux',
);
__PACKAGE__->meta->make_immutable();
}
{
package MyMouse;
use Mouse;
has [qw(foo bar baz)] => (
is => 'rw',
isa => 'Str',
default => 'qux',
);
__PACKAGE__->meta->make_immutable();
}
print "Class->meta->new_object x 10\n";
cmpthese -1, {
Moose => sub {
MyMoose->meta->new_object() for 10;
},
Mouse => sub {
MyMouse->meta->new_object() for 10;
},
};
|