#!/afs/athena/contrib/perl/perl

$| = 1;
$num = $min = 5;
$ok = 0;

if($ARGV[0] eq "-m")
{
	shift(@ARGV);
	if($#ARGV < 0) { &usage(); }
	else { $num = int($ARGV[0]); }
	shift(@ARGV);
}
if($ARGV[0] eq "-l")
{
	shift(@ARGV);
	if($#ARGV < 0) { &usage(); }
	else { $min = int($ARGV[0]); }
	shift(@ARGV);
}


while(<>)
{
chop;
s/[\.\,\?\!\'\(\)\*\-\`\{\}\\]/ /g;
@words=split;
	foreach $word (@words)
		{
#		if(!defined($INST{$word})){print(".");}
		$INST{$word}++;
		}
}
foreach (sort byvalue keys %INST)
	{
	$times = $INST{$_};
	if($times >= $num)
	{
	if(length >= $min)
	{
	print"$_ ($times)\n";
	}
	}
	}


sub byvalue { $INST{$b} <=> $INST{$a}; }


sub usage {

	print("Usage:\n");
	print("\twch [-m occurances] [-l length] -f filename\n");
	exit(0);
}









