Thanks, good point! I'll probably be customizing some of the constraints, it's mostly numeric types (that can sometimes be NaN) where I want to code defensively and check that their length and precision isn't doing anything strange. This is for importing CSV files (measurement data from various dataloggers) to a database, and exporting them again, and I figured it'd be easier and more flexible for me to implement the detailed type constraints in Perl. If I run a benchmark, I'll let you know of the results!