use Tie::File; use Carp; sub countLines { my $filename = shift; tie my @array, 'Tie::File', $filename or croak("failed to tie '$filename' - $!"); scalar @array }