Would the program be less "correct" if I switched [:alpha:] to [a-zA-Z]? Or would it be better if I used \p{IsAlpha}? What are the pros and cons of using traditional regex characters versus POSIX or Unicode?
I don't think it would be any less correct, but one of the pros of traditional character classes is compatability with older versions of Perl.
Whether that's enough a pro to warrant change depends on how prevalent 5.005_03 is in your circles, but perhaps a require 5.006; would be in order if it isn't?
--k.