{ package Person; use Moo; has name => (is => 'ro', required => 1); has age => (is => 'rw', required => 1); sub introduce_yourself { my $self = shift; printf("My name is %s, and I am %d years old.\n", $self->name, $self->age); } } my $alice = Person->new(name => 'Alice', age => 32); $alice->introduce_yourself;