http://qs321.pair.com?node_id=970418


in reply to Re^2: Understanding arguments to subroutines
in thread Understanding arguments to subroutines

The hyphen is a bit of a throw-back to olden-times. This originally meant that the caller did not need to quote the keys although that has not been required since version 5.6 and that functionality passed to the fat comma. The hyphen is not stripped off by perl, it is passed in @_ so the subroutine has to remove it.