I don't think that qualifies as "abuse" of perl. A lot of perl code uses named parameters but doesn't validate what is passed very well. So the
idea of eval "" was to avoid mentioning the names more than once, and you've settled for mentioning them twice now?