sub my_find_or_create { my $result = $self->find_by_something(@args); unless (defined $result) { # create result here } return $result; }