http://www.perlmonks.org?node_id=262550
Category: Fun Stuff
Author/Contact Info jacques
Description: This small program rates a file's adherence to perltidy guidelines. You can easily modify it to meet your requirements. It was developed on a win32 platform with the standalone perltidy script.
#!perl.exe

#
#  Perl-Messy -a program that rates files adherence to perltidy guidli
+nes
#

die "usage: 'perlmessy file1 file2 file3 ...' or 'perlmessy *.pl'\n"
  unless $ARGV[0];

foreach (@ARGV) {

    @files = glob("$_");

    foreach (@files) {
  
       die "File $_ doesn't exist\n" unless (-e $_); 
         
        system("perl perltidy $_") == 0
          or die "pertidy produced an error";

        @lines = `diff -w $_ $_.tdy`;

        unlink("$_.tdy") or warn "File $_.tdy could not be deleted\n";

        $count = 0;

        foreach (@lines) {
            /^>|^</ and $count++;
        }

        if ( $count <= 4 ) {
            $message = "Larry Wall would be proud";
        }
        elsif ( $count <= 7 ) {
            $message = "Not too untidy";
        }
        elsif ( $count <= 12 ) {
            $message = "Might want to use perltidy";
        }
        elsif ( $count <= 17 ) {
            $message = "Do you like spagetti with your dinner?";
        }
        else {
            $message = "Enter an obsufication contest. You might win";
        }

        print "$_:\n $count deviations -- $message\n";

    }
}