use strict; use warnings FATAL => qw(all); sub set_age { my $self = shift; my ($age) = @_; croak "age cannot be negative" unless $age >= 0; $self->{age} = $age; return $self; }