By your logic, we should all just be writing in binary, and assembler is for people who don't understand 1 and 0s.

With respect. Twaddle!

The purpose of abstraction is to simplify. The art of good abstraction is to use the appropriate level for the task at hand.

Using the 300+ modules of Moose et. al.:

C:\test>perl -Mused Reprove.pl 2>nul | wc -l 357
to invoke LWP::Simple::get() on a list of files, write them to a temporary directory, and then invoke system to run a command; is an inappropriate use of abstraction. The creation of complexity from simplicity. In a word, overkill.

Like hiring the Philharmonic Orchestra to play musak in your lift; using an 18-wheeler to fetch a pint of milk from the corner shop; deploying the Delta Force to remove a spider from your bath.

I've said it before, I consider Moose to be best-of-breed for its purpose. But replacing a for loop and system with 300 modules to construct a module that contains the for loop and system, is not its purpose.

With regard to expertise: Still no one has stepped up to decipher this diarrhoea:

C:\test>Perl Reprove.pl Could not create the 'reader' method for variable_name because : Could + not generate inline reader because : Could not create writer for 'va +riable_name' because Failed to compile source: Compilation error source: #line 1 "reader MooseX::Traits::__ANON__::SERIAL::2::variable_name (de +fined at C:/Perl64/site/lib/Parse/Method/Signatures/Param/Bindable.pm + line 8)" sub { if (@_ > 1) { die Moose::Error::Util::create_error(message => "Cannot assign a value + to a read-only accessor", depth => -1, ); } return $_[0]->{"variable_name"}; } at C:/Perl64/site/lib/Class/MOP/Method/Generated.pm line 63 at C:/Perl64/site/lib/Moose/Meta/Method/Accessor.pm line 41 Moose::Meta::Method::Accessor::__ANON__('Failed to compile sou +rce: Compilation error\x{a}\x{a}source:\x{a}#line 1 ...') called at C +:/Perl64/site/lib/Try/Tiny.pm line 100 Try::Tiny::try('CODE(0x6c0f240)', 'Try::Tiny::Catch=REF(0x6c0e +d78)') called at C:/Perl64/site/lib/Moose/Meta/Method/Accessor.pm lin +e 47 Moose::Meta::Method::Accessor::_compile_code('Moose::Meta::Met +hod::Accessor=HASH(0x6c0ebb0)', 'ARRAY(0x6c0ee80)') called at C:/Perl +64/site/lib/Class/MOP/Method/Accessor.pm line 142 Class::MOP::Method::Accessor::__ANON__() called at C:/Perl64/s +ite/lib/Try/Tiny.pm line 71 eval {...} called at C:/Perl64/site/lib/Try/Tiny.pm line 67 Try::Tiny::try('CODE(0x6c0eb98)', 'Try::Tiny::Catch=REF(0x6c0e +a30)') called at C:/Perl64/site/lib/Class/MOP/Method/Accessor.pm line + 157 Class::MOP::Method::Accessor::_generate_reader_method_inline(' +Moose::Meta::Method::Accessor=HASH(0x6c0ebb0)') called at C:/Perl64/s +ite/lib/Moose/Meta/Method/Accessor.pm line 62 Moose::Meta::Method::Accessor::_generate_reader_method('Moose: +:Meta::Method::Accessor=HASH(0x6c0ebb0)') called at C:/Perl64/site/li +b/Class/MOP/Method/Accessor.pm line 90 Class::MOP::Method::Accessor::_initialize_body('Moose::Meta::M +ethod::Accessor=HASH(0x6c0ebb0)') called at C:/Perl64/site/lib/Class/ +MOP/Method/Accessor.pm line 42 Class::MOP::Method::Accessor::new('Moose::Meta::Method::Access +or', 'attribute', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)', 'is_inlin +e', undef, 'accessor_type', 'reader', 'package_name', 'MooseX::Traits +::__ANON__::SERIAL::2', 'name', 'variable_name', 'associated_metaclas +s', 'Moose::Meta::Class=HASH(0x6c0c648)', 'definition_context', 'HASH +(0x6c0f1f8)') Class::MOP::Attribute::__ANON__() called at C:/Perl64/site/lib +/Try/Tiny.pm line 76 eval {...} called at C:/Perl64/site/lib/Try/Tiny.pm line 67 Try::Tiny::try('CODE(0x6c0f1b0)', 'Try::Tiny::Catch=REF(0x6c0f +0f0)') called at C:/Perl64/site/lib/Class/MOP/Attribute.pm line 401 Class::MOP::Attribute::_process_accessors('Moose::Meta::Attrib +ute=HASH(0x6c0e7c0)', 'reader', 'variable_name', undef) called at C:/ +Perl64/site/lib/Moose/Meta/Attribute.pm line 1074 Moose::Meta::Attribute::_process_accessors('Moose::Meta::Attri +bute=HASH(0x6c0e7c0)', 'reader', 'variable_name', undef) called at C: +/Perl64/site/lib/Class/MOP/Attribute.pm line 428 Class::MOP::Attribute::install_accessors('Moose::Meta::Attribu +te=HASH(0x6c0e7c0)') called at C:/Perl64/site/lib/Moose/Meta/Attribut +e.pm line 1013 Moose::Meta::Attribute::install_accessors('Moose::Meta::Attrib +ute=HASH(0x6c0e7c0)') called at C:/Perl64/site/lib/Class/MOP/Class.pm + line 891 Class::MOP::Class::__ANON__() called at C:/Perl64/site/lib/Try +/Tiny.pm line 76 eval {...} called at C:/Perl64/site/lib/Try/Tiny.pm line 67 Try::Tiny::try('CODE(0x6c0d430)', 'Try::Tiny::Catch=REF(0x6c08 +320)') called at C:/Perl64/site/lib/Class/MOP/Class.pm line 896 Class::MOP::Class::_post_add_attribute('Moose::Meta::Class=HAS +H(0x6c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') called at C: +/Perl64/site/lib/Class/MOP/Mixin/HasAttributes.pm line 44 Class::MOP::Mixin::HasAttributes::add_attribute('Moose::Meta:: +Class=HASH(0x6c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') cal +led at C:/Perl64/site/lib/Moose/Meta/Class.pm line 570 Moose::Meta::Class::add_attribute('Moose::Meta::Class=HASH(0x6 +c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') called at C:/Perl +64/site/lib/Moose/Meta/Role/Application/ToClass.pm line 152 Moose::Meta::Role::Application::ToClass::apply_attributes('Moo +se::Meta::Role::Application::ToClass=HASH(0x6c0c318)', 'Moose::Meta:: +Role::Composite=HASH(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648) +') called at C:/Perl64/site/lib/Moose/Meta/Role/Application.pm line 5 +8 Moose::Meta::Role::Application::apply('Moose::Meta::Role::Appl +ication::ToClass=HASH(0x6c0c318)', 'Moose::Meta::Role::Composite=HASH +(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)') called at C:/Perl +64/site/lib/Moose/Meta/Role/Application/ToClass.pm line 36 Moose::Meta::Role::Application::ToClass::apply('Moose::Meta::R +ole::Application::ToClass=HASH(0x6c0c318)', 'Moose::Meta::Role::Compo +site=HASH(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)', 'HASH(0x +6c03318)') called at C:/Perl64/site/lib/Moose/Meta/Role.pm line 470 Moose::Meta::Role::apply('Moose::Meta::Role::Composite=HASH(0x +6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)') called at C:/Perl64/ +site/lib/Moose/Util.pm line 163 Moose::Util::_apply_all_roles('Moose::Meta::Class=HASH(0x6c0c6 +48)', undef, 'Parse::Method::Signatures::Param::Bindable', 'Parse::Me +thod::Signatures::Param::Positional') called at C:/Perl64/site/lib/Mo +ose/Util.pm line 99 Moose::Util::apply_all_roles('Moose::Meta::Class=HASH(0x6c0c64 +8)', 'Parse::Method::Signatures::Param::Bindable', 'Parse::Method::Si +gnatures::Param::Positional') called at C:/Perl64/site/lib/Moose/Meta +/Class.pm line 104 Moose::Meta::Class::create('Class::MOP::Class::Immutable::Moos +e::Meta::Class=HASH(0x6b2f580)', 'MooseX::Traits::__ANON__::SERIAL::2 +', 'superclasses', 'ARRAY(0x6a072e8)', 'roles', 'ARRAY(0x6a1fea0)', ' +cache', 1) called at C:/Perl64/site/lib/MooseX/Traits/Util.pm line 67 MooseX::Traits::Util::new_class_with_traits('Parse::Method::Si +gnatures::Param', 'Bindable', 'Positional') called at C:/Perl64/site/ +lib/MooseX/Traits.pm line 24 MooseX::Traits::with_traits('Parse::Method::Signatures::Param' +, 'Bindable', 'Positional') called at C:/Perl64/site/lib/MooseX/Trait +s.pm line 46 MooseX::Traits::new_with_traits('Parse::Method::Signatures::Pa +ram', 'traits', 'ARRAY(0x6bfabd8)', 'required', 1, 'type_constraints' +, 'Parse::Method::Signatures::TypeConstraint=HASH(0x6c0b9e8)', 'varia +ble_name', '$file', 'sigil', '$') called at C:/Perl64/site/lib/Parse/ +Method/Signatures.pm line 113 Parse::Method::Signatures::create_param('Parse::Method::Signat +ures=HASH(0x6c08608)', 'HASH(0x6c085f0)') called at C:/Perl64/site/li +b/Parse/Method/Signatures.pm line 359 Parse::Method::Signatures::param('Parse::Method::Signatures=HA +SH(0x6c08608)') called at C:/Perl64/site/lib/Parse/Method/Signatures. +pm line 248 Parse::Method::Signatures::signature('Parse::Method::Signature +s', 'input', '(Str $file, $fh)', 'from_namespace', 'Module::Reprove') + called at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm + line 199 MooseX::Method::Signatures::Meta::Method::_build_parsed_signat +ure('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') calle +d at reader MooseX::Method::Signatures::Meta::Method::parsed_signatur +e (defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method +.pm line 36) line 7 MooseX::Method::Signatures::Meta::Method::parsed_signature('Mo +oseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C: +/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 319 MooseX::Method::Signatures::Meta::Method::_build__positional_a +rgs('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') calle +d at reader MooseX::Method::Signatures::Meta::Method::_positional_arg +s (defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method +.pm line 62) line 7 MooseX::Method::Signatures::Meta::Method::_positional_args('Mo +oseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C: +/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 369 MooseX::Method::Signatures::Meta::Method::_build_type_constrai +nt('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called + at reader MooseX::Method::Signatures::Meta::Method::type_constraint +(defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.p +m line 81) line 7 MooseX::Method::Signatures::Meta::Method::type_constraint('Moo +seX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C:/ +Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 174 Class::MOP::Class:::around('CODE(0x439bf08)', 'MooseX::Method: +:Signatures::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $fi +le, $fh)', 'name', '_getfile_to_handle', 'package_name', 'Module::Rep +rove') called at C:/Perl64/site/lib/Class/MOP/Method/Wrapped.pm line +162 Class::MOP::Method::Wrapped::__ANON__('MooseX::Method::Signatu +res::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $file, $fh) +', 'name', '_getfile_to_handle', 'package_name', 'Module::Reprove') c +alled at C:/Perl64/site/lib/Class/MOP/Method/Wrapped.pm line 91 MooseX::Method::Signatures::Meta::Method::wrap('MooseX::Method +::Signatures::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $f +ile, $fh)', 'name', '_getfile_to_handle', 'package_name', 'Module::Re +prove') called at C:/Perl64/site/lib/MooseX/Method/Signatures.pm line + 259 MooseX::Method::Signatures::_parser('MooseX::Method::Signature +s=HASH(0x6a07600)') called at C:/Perl64/site/lib/MooseX/Method/Signat +ures.pm line 200 eval {...} called at C:/Perl64/site/lib/MooseX/Method/Signatur +es.pm line 200 MooseX::Method::Signatures::parser('MooseX::Method::Signatures +=HASH(0x6a07600)') called at C:/Perl64/site/lib/MooseX/Declare/Syntax +/MethodDeclaration.pm line 51 MooseX::Declare::Syntax::MethodDeclaration::parse('MooseX::Dec +lare::Syntax::Keyword::Method=HASH(0x62b9cf8)', 'MooseX::Declare::Con +text=HASH(0x6a07528)') called at C:/Perl64/site/lib/MooseX/Declare/Sy +ntax/KeywordHandling.pm line 97 MooseX::Declare::Syntax::KeywordHandling::parse_declaration('M +ooseX::Declare::Syntax::Keyword::Method=HASH(0x62b9cf8)', 'C:/Perl64/ +site/lib/Module/Reprove.pm', 'HASH(0x62ba2d0)', 'method', 1) called a +t C:/Perl64/site/lib/MooseX/Declare/Syntax/KeywordHandling.pm line 51 MooseX::Declare::Syntax::KeywordHandling::__ANON__('method', 1 +) called at C:/Perl64/site/lib/Devel/Declare.pm line 274 Devel::Declare::linestr_callback('const', 'method', 1) called +at C:/Perl64/site/lib/Module/Reprove.pm line 109 require Module/Reprove.pm called at C:/Perl64/site/lib/App/Rep +rove.pm line 16 App::Reprove::BEGIN() called at C:/Perl64/site/lib/Module/Repr +ove.pm line 109 eval {...} called at C:/Perl64/site/lib/Module/Reprove.pm line + 109 require App/Reprove.pm called at C:\test\Reprove.pl line 3 main::BEGIN() called at C:/Perl64/site/lib/Module/Reprove.pm l +ine 109 eval {...} called at C:/Perl64/site/lib/Module/Reprove.pm line + 109 at C:/Perl64/site/lib/Class/MOP/Method/Accessor.pm line 156 Class::MOP::Method::Accessor::__ANON__('Could not create write +r for \'variable_name\' because Failed ...') called at C:/Perl64/site +/lib/Try/Tiny.pm line 100 Try::Tiny::try('CODE(0x6c0eb98)', 'Try::Tiny::Catch=REF(0x6c0e +a30)') called at C:/Perl64/site/lib/Class/MOP/Method/Accessor.pm line + 157 Class::MOP::Method::Accessor::_generate_reader_method_inline(' +Moose::Meta::Method::Accessor=HASH(0x6c0ebb0)') called at C:/Perl64/s +ite/lib/Moose/Meta/Method/Accessor.pm line 62 Moose::Meta::Method::Accessor::_generate_reader_method('Moose: +:Meta::Method::Accessor=HASH(0x6c0ebb0)') called at C:/Perl64/site/li +b/Class/MOP/Method/Accessor.pm line 90 Class::MOP::Method::Accessor::_initialize_body('Moose::Meta::M +ethod::Accessor=HASH(0x6c0ebb0)') called at C:/Perl64/site/lib/Class/ +MOP/Method/Accessor.pm line 42 Class::MOP::Method::Accessor::new('Moose::Meta::Method::Access +or', 'attribute', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)', 'is_inlin +e', undef, 'accessor_type', 'reader', 'package_name', 'MooseX::Traits +::__ANON__::SERIAL::2', ...) called at C:/Perl64/site/lib/Class/MOP/A +ttribute.pm line 389 Class::MOP::Attribute::__ANON__() called at C:/Perl64/site/lib +/Try/Tiny.pm line 76 eval {...} called at C:/Perl64/site/lib/Try/Tiny.pm line 67 Try::Tiny::try('CODE(0x6c0f1b0)', 'Try::Tiny::Catch=REF(0x6c0f +0f0)') called at C:/Perl64/site/lib/Class/MOP/Attribute.pm line 401 Class::MOP::Attribute::_process_accessors('Moose::Meta::Attrib +ute=HASH(0x6c0e7c0)', 'reader', 'variable_name', undef) called at C:/ +Perl64/site/lib/Moose/Meta/Attribute.pm line 1074 Moose::Meta::Attribute::_process_accessors('Moose::Meta::Attri +bute=HASH(0x6c0e7c0)', 'reader', 'variable_name', undef) called at C: +/Perl64/site/lib/Class/MOP/Attribute.pm line 428 Class::MOP::Attribute::install_accessors('Moose::Meta::Attribu +te=HASH(0x6c0e7c0)') called at C:/Perl64/site/lib/Moose/Meta/Attribut +e.pm line 1013 Moose::Meta::Attribute::install_accessors('Moose::Meta::Attrib +ute=HASH(0x6c0e7c0)') called at C:/Perl64/site/lib/Class/MOP/Class.pm + line 891 Class::MOP::Class::__ANON__() called at C:/Perl64/site/lib/Try +/Tiny.pm line 76 eval {...} called at C:/Perl64/site/lib/Try/Tiny.pm line 67 Try::Tiny::try('CODE(0x6c0d430)', 'Try::Tiny::Catch=REF(0x6c08 +320)') called at C:/Perl64/site/lib/Class/MOP/Class.pm line 896 Class::MOP::Class::_post_add_attribute('Moose::Meta::Class=HAS +H(0x6c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') called at C: +/Perl64/site/lib/Class/MOP/Mixin/HasAttributes.pm line 44 Class::MOP::Mixin::HasAttributes::add_attribute('Moose::Meta:: +Class=HASH(0x6c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') cal +led at C:/Perl64/site/lib/Moose/Meta/Class.pm line 570 Moose::Meta::Class::add_attribute('Moose::Meta::Class=HASH(0x6 +c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') called at C:/Perl +64/site/lib/Moose/Meta/Role/Application/ToClass.pm line 152 Moose::Meta::Role::Application::ToClass::apply_attributes('Moo +se::Meta::Role::Application::ToClass=HASH(0x6c0c318)', 'Moose::Meta:: +Role::Composite=HASH(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648) +') called at C:/Perl64/site/lib/Moose/Meta/Role/Application.pm line 5 +8 Moose::Meta::Role::Application::apply('Moose::Meta::Role::Appl +ication::ToClass=HASH(0x6c0c318)', 'Moose::Meta::Role::Composite=HASH +(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)') called at C:/Perl +64/site/lib/Moose/Meta/Role/Application/ToClass.pm line 36 Moose::Meta::Role::Application::ToClass::apply('Moose::Meta::R +ole::Application::ToClass=HASH(0x6c0c318)', 'Moose::Meta::Role::Compo +site=HASH(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)', 'HASH(0x +6c03318)') called at C:/Perl64/site/lib/Moose/Meta/Role.pm line 470 Moose::Meta::Role::apply('Moose::Meta::Role::Composite=HASH(0x +6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)') called at C:/Perl64/ +site/lib/Moose/Util.pm line 163 Moose::Util::_apply_all_roles('Moose::Meta::Class=HASH(0x6c0c6 +48)', undef, 'Parse::Method::Signatures::Param::Bindable', 'Parse::Me +thod::Signatures::Param::Positional') called at C:/Perl64/site/lib/Mo +ose/Util.pm line 99 Moose::Util::apply_all_roles('Moose::Meta::Class=HASH(0x6c0c64 +8)', 'Parse::Method::Signatures::Param::Bindable', 'Parse::Method::Si +gnatures::Param::Positional') called at C:/Perl64/site/lib/Moose/Meta +/Class.pm line 104 Moose::Meta::Class::create('Class::MOP::Class::Immutable::Moos +e::Meta::Class=HASH(0x6b2f580)', 'MooseX::Traits::__ANON__::SERIAL::2 +', 'superclasses', 'ARRAY(0x6a072e8)', 'roles', 'ARRAY(0x6a1fea0)', ' +cache', 1) called at C:/Perl64/site/lib/MooseX/Traits/Util.pm line 67 MooseX::Traits::Util::new_class_with_traits('Parse::Method::Si +gnatures::Param', 'Bindable', 'Positional') called at C:/Perl64/site/ +lib/MooseX/Traits.pm line 24 MooseX::Traits::with_traits('Parse::Method::Signatures::Param' +, 'Bindable', 'Positional') called at C:/Perl64/site/lib/MooseX/Trait +s.pm line 46 MooseX::Traits::new_with_traits('Parse::Method::Signatures::Pa +ram', 'traits', 'ARRAY(0x6bfabd8)', 'required', 1, 'type_constraints' +, 'Parse::Method::Signatures::TypeConstraint=HASH(0x6c0b9e8)', 'varia +ble_name', '$file', ...) called at C:/Perl64/site/lib/Parse/Method/Si +gnatures.pm line 113 Parse::Method::Signatures::create_param('Parse::Method::Signat +ures=HASH(0x6c08608)', 'HASH(0x6c085f0)') called at C:/Perl64/site/li +b/Parse/Method/Signatures.pm line 359 Parse::Method::Signatures::param('Parse::Method::Signatures=HA +SH(0x6c08608)') called at C:/Perl64/site/lib/Parse/Method/Signatures. +pm line 248 Parse::Method::Signatures::signature('Parse::Method::Signature +s', 'input', '(Str $file, $fh)', 'from_namespace', 'Module::Reprove') + called at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm + line 199 MooseX::Method::Signatures::Meta::Method::_build_parsed_signat +ure('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') calle +d at reader MooseX::Method::Signatures::Meta::Method::parsed_signatur +e (defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method +.pm line 36) line 7 MooseX::Method::Signatures::Meta::Method::parsed_signature('Mo +oseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C: +/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 319 MooseX::Method::Signatures::Meta::Method::_build__positional_a +rgs('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') calle +d at reader MooseX::Method::Signatures::Meta::Method::_positional_arg +s (defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method +.pm line 62) line 7 MooseX::Method::Signatures::Meta::Method::_positional_args('Mo +oseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C: +/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 369 MooseX::Method::Signatures::Meta::Method::_build_type_constrai +nt('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called + at reader MooseX::Method::Signatures::Meta::Method::type_constraint +(defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.p +m line 81) line 7 MooseX::Method::Signatures::Meta::Method::type_constraint('Moo +seX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C:/ +Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 174 Class::MOP::Class:::around('CODE(0x439bf08)', 'MooseX::Method: +:Signatures::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $fi +le, $fh)', 'name', '_getfile_to_handle', 'package_name', 'Module::Rep +rove', ...) called at C:/Perl64/site/lib/Class/MOP/Method/Wrapped.pm +line 162 Class::MOP::Method::Wrapped::__ANON__('MooseX::Method::Signatu +res::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $file, $fh) +', 'name', '_getfile_to_handle', 'package_name', 'Module::Reprove') c +alled at C:/Perl64/site/lib/Class/MOP/Method/Wrapped.pm line 91 MooseX::Method::Signatures::Meta::Method::wrap('MooseX::Method +::Signatures::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $f +ile, $fh)', 'name', '_getfile_to_handle', 'package_name', 'Module::Re +prove') called at C:/Perl64/site/lib/MooseX/Method/Signatures.pm line + 259 MooseX::Method::Signatures::_parser('MooseX::Method::Signature +s=HASH(0x6a07600)') called at C:/Perl64/site/lib/MooseX/Method/Signat +ures.pm line 200 eval {...} called at C:/Perl64/site/lib/MooseX/Method/Signatur +es.pm line 200 MooseX::Method::Signatures::parser('MooseX::Method::Signatures +=HASH(0x6a07600)') called at C:/Perl64/site/lib/MooseX/Declare/Syntax +/MethodDeclaration.pm line 51 MooseX::Declare::Syntax::MethodDeclaration::parse('MooseX::Dec +lare::Syntax::Keyword::Method=HASH(0x62b9cf8)', 'MooseX::Declare::Con +text=HASH(0x6a07528)') called at C:/Perl64/site/lib/MooseX/Declare/Sy +ntax/KeywordHandling.pm line 97 MooseX::Declare::Syntax::KeywordHandling::parse_declaration('M +ooseX::Declare::Syntax::Keyword::Method=HASH(0x62b9cf8)', 'C:/Perl64/ +site/lib/Module/Reprove.pm', 'HASH(0x62ba2d0)', 'method', 1) called a +t C:/Perl64/site/lib/MooseX/Declare/Syntax/KeywordHandling.pm line 51 MooseX::Declare::Syntax::KeywordHandling::__ANON__('method', 1 +) called at C:/Perl64/site/lib/Devel/Declare.pm line 274 Devel::Declare::linestr_callback('const', 'method', 1) called +at C:/Perl64/site/lib/Module/Reprove.pm line 109 require Module/Reprove.pm called at C:/Perl64/site/lib/App/Rep +rove.pm line 16 App::Reprove::BEGIN() called at C:/Perl64/site/lib/Module/Repr +ove.pm line 109 eval {...} called at C:/Perl64/site/lib/Module/Reprove.pm line + 109 require App/Reprove.pm called at C:\test\Reprove.pl line 3 main::BEGIN() called at C:/Perl64/site/lib/Module/Reprove.pm l +ine 109 eval {...} called at C:/Perl64/site/lib/Module/Reprove.pm line + 109 at C:/Perl64/site/lib/Class/MOP/Attribute.pm line 400 Class::MOP::Attribute::__ANON__('Could not generate inline rea +der because : Could not create w...') called at C:/Perl64/site/lib/Tr +y/Tiny.pm line 100 Try::Tiny::try('CODE(0x6c0f1b0)', 'Try::Tiny::Catch=REF(0x6c0f +0f0)') called at C:/Perl64/site/lib/Class/MOP/Attribute.pm line 401 Class::MOP::Attribute::_process_accessors('Moose::Meta::Attrib +ute=HASH(0x6c0e7c0)', 'reader', 'variable_name', undef) called at C:/ +Perl64/site/lib/Moose/Meta/Attribute.pm line 1074 Moose::Meta::Attribute::_process_accessors('Moose::Meta::Attri +bute=HASH(0x6c0e7c0)', 'reader', 'variable_name', undef) called at C: +/Perl64/site/lib/Class/MOP/Attribute.pm line 428 Class::MOP::Attribute::install_accessors('Moose::Meta::Attribu +te=HASH(0x6c0e7c0)') called at C:/Perl64/site/lib/Moose/Meta/Attribut +e.pm line 1013 Moose::Meta::Attribute::install_accessors('Moose::Meta::Attrib +ute=HASH(0x6c0e7c0)') called at C:/Perl64/site/lib/Class/MOP/Class.pm + line 891 Class::MOP::Class::__ANON__() called at C:/Perl64/site/lib/Try +/Tiny.pm line 76 eval {...} called at C:/Perl64/site/lib/Try/Tiny.pm line 67 Try::Tiny::try('CODE(0x6c0d430)', 'Try::Tiny::Catch=REF(0x6c08 +320)') called at C:/Perl64/site/lib/Class/MOP/Class.pm line 896 Class::MOP::Class::_post_add_attribute('Moose::Meta::Class=HAS +H(0x6c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') called at C: +/Perl64/site/lib/Class/MOP/Mixin/HasAttributes.pm line 44 Class::MOP::Mixin::HasAttributes::add_attribute('Moose::Meta:: +Class=HASH(0x6c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') cal +led at C:/Perl64/site/lib/Moose/Meta/Class.pm line 570 Moose::Meta::Class::add_attribute('Moose::Meta::Class=HASH(0x6 +c0c648)', 'Moose::Meta::Attribute=HASH(0x6c0e7c0)') called at C:/Perl +64/site/lib/Moose/Meta/Role/Application/ToClass.pm line 152 Moose::Meta::Role::Application::ToClass::apply_attributes('Moo +se::Meta::Role::Application::ToClass=HASH(0x6c0c318)', 'Moose::Meta:: +Role::Composite=HASH(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648) +') called at C:/Perl64/site/lib/Moose/Meta/Role/Application.pm line 5 +8 Moose::Meta::Role::Application::apply('Moose::Meta::Role::Appl +ication::ToClass=HASH(0x6c0c318)', 'Moose::Meta::Role::Composite=HASH +(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)') called at C:/Perl +64/site/lib/Moose/Meta/Role/Application/ToClass.pm line 36 Moose::Meta::Role::Application::ToClass::apply('Moose::Meta::R +ole::Application::ToClass=HASH(0x6c0c318)', 'Moose::Meta::Role::Compo +site=HASH(0x6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)', 'HASH(0x +6c03318)') called at C:/Perl64/site/lib/Moose/Meta/Role.pm line 470 Moose::Meta::Role::apply('Moose::Meta::Role::Composite=HASH(0x +6c0c3d8)', 'Moose::Meta::Class=HASH(0x6c0c648)') called at C:/Perl64/ +site/lib/Moose/Util.pm line 163 Moose::Util::_apply_all_roles('Moose::Meta::Class=HASH(0x6c0c6 +48)', undef, 'Parse::Method::Signatures::Param::Bindable', 'Parse::Me +thod::Signatures::Param::Positional') called at C:/Perl64/site/lib/Mo +ose/Util.pm line 99 Moose::Util::apply_all_roles('Moose::Meta::Class=HASH(0x6c0c64 +8)', 'Parse::Method::Signatures::Param::Bindable', 'Parse::Method::Si +gnatures::Param::Positional') called at C:/Perl64/site/lib/Moose/Meta +/Class.pm line 104 Moose::Meta::Class::create('Class::MOP::Class::Immutable::Moos +e::Meta::Class=HASH(0x6b2f580)', 'MooseX::Traits::__ANON__::SERIAL::2 +', 'superclasses', 'ARRAY(0x6a072e8)', 'roles', 'ARRAY(0x6a1fea0)', ' +cache', 1) called at C:/Perl64/site/lib/MooseX/Traits/Util.pm line 67 MooseX::Traits::Util::new_class_with_traits('Parse::Method::Si +gnatures::Param', 'Bindable', 'Positional') called at C:/Perl64/site/ +lib/MooseX/Traits.pm line 24 MooseX::Traits::with_traits('Parse::Method::Signatures::Param' +, 'Bindable', 'Positional') called at C:/Perl64/site/lib/MooseX/Trait +s.pm line 46 MooseX::Traits::new_with_traits('Parse::Method::Signatures::Pa +ram', 'traits', 'ARRAY(0x6bfabd8)', 'required', 1, 'type_constraints' +, 'Parse::Method::Signatures::TypeConstraint=HASH(0x6c0b9e8)', 'varia +ble_name', '$file', ...) called at C:/Perl64/site/lib/Parse/Method/Si +gnatures.pm line 113 Parse::Method::Signatures::create_param('Parse::Method::Signat +ures=HASH(0x6c08608)', 'HASH(0x6c085f0)') called at C:/Perl64/site/li +b/Parse/Method/Signatures.pm line 359 Parse::Method::Signatures::param('Parse::Method::Signatures=HA +SH(0x6c08608)') called at C:/Perl64/site/lib/Parse/Method/Signatures. +pm line 248 Parse::Method::Signatures::signature('Parse::Method::Signature +s', 'input', '(Str $file, $fh)', 'from_namespace', 'Module::Reprove') + called at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm + line 199 MooseX::Method::Signatures::Meta::Method::_build_parsed_signat +ure('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') calle +d at reader MooseX::Method::Signatures::Meta::Method::parsed_signatur +e (defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method +.pm line 36) line 7 MooseX::Method::Signatures::Meta::Method::parsed_signature('Mo +oseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C: +/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 319 MooseX::Method::Signatures::Meta::Method::_build__positional_a +rgs('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') calle +d at reader MooseX::Method::Signatures::Meta::Method::_positional_arg +s (defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method +.pm line 62) line 7 MooseX::Method::Signatures::Meta::Method::_positional_args('Mo +oseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C: +/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 369 MooseX::Method::Signatures::Meta::Method::_build_type_constrai +nt('MooseX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called + at reader MooseX::Method::Signatures::Meta::Method::type_constraint +(defined at C:/Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.p +m line 81) line 7 MooseX::Method::Signatures::Meta::Method::type_constraint('Moo +seX::Method::Signatures::Meta::Method=HASH(0x6c0b7a8)') called at C:/ +Perl64/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 174 Class::MOP::Class:::around('CODE(0x439bf08)', 'MooseX::Method: +:Signatures::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $fi +le, $fh)', 'name', '_getfile_to_handle', 'package_name', 'Module::Rep +rove', ...) called at C:/Perl64/site/lib/Class/MOP/Method/Wrapped.pm +line 162 Class::MOP::Method::Wrapped::__ANON__('MooseX::Method::Signatu +res::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $file, $fh) +', 'name', '_getfile_to_handle', 'package_name', 'Module::Reprove') c +alled at C:/Perl64/site/lib/Class/MOP/Method/Wrapped.pm line 91 MooseX::Method::Signatures::Meta::Method::wrap('MooseX::Method +::Signatures::Meta::Method', 'CODE(0x5bab988)', 'signature', '(Str $f +ile, $fh)', 'name', '_getfile_to_handle', 'package_name', 'Module::Re +prove') called at C:/Perl64/site/lib/MooseX/Method/Signatures.pm line + 259 MooseX::Method::Signatures::_parser('MooseX::Method::Signature +s=HASH(0x6a07600)') called at C:/Perl64/site/lib/MooseX/Method/Signat +ures.pm line 200 eval {...} called at C:/Perl64/site/lib/MooseX/Method/Signatur +es.pm line 200 MooseX::Method::Signatures::parser('MooseX::Method::Signatures +=HASH(0x6a07600)') called at C:/Perl64/site/lib/MooseX/Declare/Syntax +/MethodDeclaration.pm line 51 MooseX::Declare::Syntax::MethodDeclaration::parse('MooseX::Dec +lare::Syntax::Keyword::Method=HASH(0x62b9cf8)', 'MooseX::Declare::Con +text=HASH(0x6a07528)') called at C:/Perl64/site/lib/MooseX/Declare/Sy +ntax/KeywordHandling.pm line 97 MooseX::Declare::Syntax::KeywordHandling::parse_declaration('M +ooseX::Declare::Syntax::Keyword::Method=HASH(0x62b9cf8)', 'C:/Perl64/ +site/lib/Module/Reprove.pm', 'HASH(0x62ba2d0)', 'method', 1) called a +t C:/Perl64/site/lib/MooseX/Declare/Syntax/KeywordHandling.pm line 51 MooseX::Declare::Syntax::KeywordHandling::__ANON__('method', 1 +) called at C:/Perl64/site/lib/Devel/Declare.pm line 274 Devel::Declare::linestr_callback('const', 'method', 1) called +at C:/Perl64/site/lib/Module/Reprove.pm line 109 require Module/Reprove.pm called at C:/Perl64/site/lib/App/Rep +rove.pm line 16 App::Reprove::BEGIN() called at C:/Perl64/site/lib/Module/Repr +ove.pm line 109 eval {...} called at C:/Perl64/site/lib/Module/Reprove.pm line + 109 require App/Reprove.pm called at C:\test\Reprove.pl line 3 main::BEGIN() called at C:/Perl64/site/lib/Module/Reprove.pm l +ine 109 eval {...} called at C:/Perl64/site/lib/Module/Reprove.pm line + 109 Compilation failed in require at C:/Perl64/site/lib/App/Reprove.pm lin +e 16. BEGIN failed--compilation aborted at C:/Perl64/site/lib/App/Reprove.pm + line 16. Compilation failed in require at C:\test\Reprove.pl line 3. BEGIN failed--compilation aborted at C:\test\Reprove.pl line 3.

If you need what Moose provides, and if it works, it's really cool. But it doesn't always work right, and when it doesn't, you are world of pain. Up shit creek without a paddle unless some one-of-the-four takes pity on you. And that is no way to make a living in this industry.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

The start of some sanity?


In reply to Re^8: Should I upload it on CPAN? by BrowserUk
in thread Should I upload it on CPAN? by llancet

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.