while(){ ... my $line = $_; ... } #### while(my $line = ){ ... } #### use warnings; use strict; use Data::Dumper; use List::Util qw(sum); my %seen; while () { chomp; $seen{$_}++; } print Dumper \%seen; my $total = 0; $total += $_ for values %seen; print $total; print sum( values %seen ); # sum from List::Util __DATA__ james dave mike ken jon jon ken jon mike james dave mike ken jon jon