the Perl syntax highlighter is mangling some perl code, for example, this line:
my(undef, undef, $ftype) = fileparse($file,qr{\..*});
using the perl syntax highlighter (which I guess does not work in this forum) the backslash in qr{\..*} is removed, and becomes qr{..*} which is no longer the correct code for the regexp.
Adding two backslashes overcomes the problem: qr{\\..*} but that means a person has to know they need to write bad code so it displays as good code, and there might be other problems that I have not spotted yet.
Regards,
Kevin