Ich benutze das in Term::Choose. Mit der Auslagerung wollte ich die Hauptfunktion etwas kürzer machen und eventuell _validate_arguments in einem abgeleiteten Modul wiederverwenden.
Aber lieber als es kompliziert zu machen, werde ich es wieder zurück in die Funktion geben.