1) Rich features. It handles common validations out-of-the-box, and with the ability to specify a regex/callback it's easily extensible.
2) The error messages generated when validation fails are very user-friendly.
3) The documentation is also stellar; every question I've had has been answered there.
Use it without hesitation.
Absolutely great module, five stars all around for the code itself. Four stars for the developer, though, who's yet to apply a three year old patch (it's been sitting on RT, ready and waiting) that adds the one missing feature I want!
Somone should include this in an intermediate perl book. It's very useful.
I hate to give all 5's, but I love Params::Validate. It's become as common in the perl I write as 'use strict'. It provides enough flexibility to ensure that it won't ever get in your way (it handles both positional and non-positional arguments,) it's syntax is simple and intuitive, and I've rarely had a case that couldn't be expressed with it.
Use Params::Validate; you'll write better perl.
Excellent module overall. My only complaint is there's no easy way to handle errors.
This is a great module for validating named or unamed subroutine and method parameters. It's easy to use, and seems to work without any problems.
My only "complaint" (read: wishlist item) is that there's no way to have both unnamed and named calling styles.
Excellent way to validate one's parameters. Very worthy of the namespace.
Lets one validate the type of ones parameters, lets you attach callbacks to verify the contents of said variables, lets you have positional _or_ named arguments, lets you have default values for things. Lets you do lots of things.
Very nice and I strongly recommend it.
1 hidden unhelpful review