Thanks to the presence of mind of Marcel Grünauer, the Perl community can easily see benchmarks for common Perl accessor packages with App::Benchmark::Accessors.
Here are the numbers on my MacBook Pro with 10.6:
# class_accessor 719424/s # rubyish_attribute 1176471/s # spiffy 1342282/s # class_spiffy 1388889/s # class_accessor_fast 1428571/s # class_accessor_complex 1449275/s # class_accessor_constructor 1470588/s # class_methodmaker 1550388/s # moose 1612903/s # moose_immutable 1612903/s # accessors 1724138/s # mojo 1785714/s # mouse_immutable 1941748/s # mouse 1960784/s # class_accessor_classy 2000000/s # class_accessor_fast_xs 3333333/s # class_xsaccessor 3508772/s # object_tiny_xs 3508772/s # rose 3571429/s # class_xsaccessor_array 3921569/s
Glad to see Rose::Object (with Class::XSAccessor support) near the top of the list. That’s what I chose for Net::LDAP::Class, and I’ll be switching to that for the rest of my projects RSN.