If you're planning to read through a list of files from the command line, then you should really use <> - it saves you all the work of opening all the files etc..
And, rather than all that work with $in_pod, I'd just use the range operator.
A line containing no alphanumerics is not counted as a line of code
Not sure I'd agree with that. Haven't you seen some of the JAPHs posted :) I'd personally check for absence of non-whitespace.
So, personally, I'd reduce all this down to:
#!/usr/bin/perl -w use strict; my $total = my $pod = my $comment = my $blank = my $code = 0; while(<>) { $total++; if ( /^=\w+/ .. /^=cut/ ) { $pod++; next } if ( /^\s*#/ ) { $comment++; next } unless ( /\S/ ) { $blank++; next } $code++; } print <<END; Total: $total POD: $pod Comments: $comment Blank: $blank Code: $code END
Tony
In reply to Re: Code counter
by salvadors
in thread Code counter
by Falkkin
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |