Evo-XS

Evo parts written in C


License
Artistic-1.0-Perl

Documentation

NAME Build Status

DESCRIPTION

Evo parts written in C. Right now only Evo::Class has XS version

  • Evo::Class::Attrs::XS

Benchmarks

cpanm Evo Evo::XS Moo MooX::StrictConstructor Class::XSAccessor Mouse MouseX::StrictConstructor
perl bench/bench-classes.pl

Conclusions

All modules demonstrate quite similar performance for attributes. But Evo constructor is 2-2.5 times faster because it was designed to be strict from the beginning.

Results (i7-3770)

New(strict)
        Rate   Moo Mouse   Evo
Moo    435/s    --  -30%  -74%
Mouse  621/s   43%    --  -63%
Evo   1674/s  284%  169%    --


Simple get+set
           Rate   Moo Mouse   Evo
Moo   3709584/s    --  -18%  -27%
Mouse 4497568/s   21%    --  -12%
Evo   5097244/s   37%   13%    --


Lazy + default + simple
           Rate   Moo Mouse   Evo
Moo   1494345/s    --  -29%  -34%
Mouse 2104366/s   41%    --   -7%
Evo   2271049/s   52%    8%    --