in reply to Autoload versus auto-generating accessors

<$0.02>

When I'm doing something so simple that Moo is more than I need, I usually turn to Class::Accessor::Fast. You could easily copy the source from Class::Accessor and/or Class::Accessor::Fast if you really can't install modules from CPAN.
package Foo; use strict; use warnings; use parent 'Class::Accessor::Fast'; BEGIN { __PACKAGE__->mk_accessors(qw/ bar qux /); } sub new { my $class = shift; return $class->SUPER::new(); } 1; # return true
perl -MFoo -E' my $foo = Foo->new; $foo->bar("baz"); $foo->qux( $foo->bar ); say $foo->bar; say $foo->qux; '
Output:
baz baz
</$0.02>

The way forward always starts with a minimal test.