Too many comments not enough functionality

It seems strange that half of the script is just comments. I replaced it with this script:

#!/usr/bin/perl -w

use strict;
use Getopt::Long;
use constant {
OK => 0,
WARNING => 1,
CRITICAL => 2,
UNKNOWN => 3
};
use constant RETCODES => qw ( OK WARNING CRITICAL UNKNOWN ) ;
use File::Temp qw/ tempfile tempdir /;

sub error {
my ($rc,$msg)=@_;
printf “%s: %s
“,(RETCODES)[$rc],$msg;
exit($rc);
}

my $dir;
if($ARGV[0]){
$dir = $ARGV[0];
}else{
error(UNKNOWN,”No input, specify a directory”)
}
my $tmp = File::Temp->new( DIR => $dir );

chdir $dir or error(CRITICAL,”Could not cwd to $dir”);

open FOUT,”> $tmp” or error(CRITICAL,”Could to write to $dir”);
close FOUT;

printf “OK: $dir is writable.
“;
exit(OK);