Why? 4. It's easier than the alternative
But what if we need to return a value?
my($value, $errors) = do_something(); if( $errors ) { # deal with it # return ( undef, $errors ) ? }