port to built-in Perl sub signatures