in reply to Use method/function signatures with Perl
With the code as written, all of those method calls would "succeed" and silently DWIDM (do what I don't mean.) This is a pernicious source of bugs. In fact, there's a lot of debate in the Perl community about whether or not it's worth putting in a lot of extra checks in the code to protect against this.
This is one of the reasons I like Params::Validate. You can put as much or as little validation rules as you want.
I'm Not Just Another Perl Hacker